📄 processvaribletest.java
字号:
package com.sample;
import junit.framework.TestCase;
import org.jbpm.context.exe.ContextInstance;
import org.jbpm.graph.def.ProcessDefinition;
import org.jbpm.graph.exe.ProcessInstance;
public class ProcessVaribleTest extends TestCase {
public void testProcessVaribles(){
// 这个例子还是从hello world流程开始,这次甚至没有修改.
ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
"<process-definition>" +
" <start-state>" +
" <transition to='s' />" +
" </start-state>" +
" <state name='s'>" +
" <transition to='end' />" +
" </state>" +
" <end-state name='end' />" +
"</process-definition>"
);
ProcessInstance processInstance =
new ProcessInstance(processDefinition);
// 从流程实例中取得同流程变量一起工作的上下文实例
ContextInstance contextInstance =
processInstance.getContextInstance();
// 在流程已经离开开始状态之前,我们将在流程实例的上下文中设置一些变量.
contextInstance.setVariable("amount", new Integer(500));
contextInstance.setVariable("reason", "i met my deadline");
// 从现在开始,这些变量同流程实例关联在一起.
// 流程变量现在可以通过显示的API被用户代码来访问.
// 流程变量也可以作为流程实例的一部分存储到数据库中.
processInstance.signal();
// 通过上下文实例是可以可以访问变量的
assertEquals(new Integer(500),
contextInstance.getVariable("amount"));
assertEquals("i met my deadline",
contextInstance.getVariable("reason"));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -