KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jbpm > bpel > service > def > InvokerDbTest


1 package org.jbpm.bpel.service.def;
2
3 import javax.wsdl.Operation;
4
5 import org.jbpm.bpel.data.def.VariableDefinition;
6 import org.jbpm.bpel.db.AbstractDbTestCase;
7 import org.jbpm.bpel.def.BpelDefinition;
8 import org.jbpm.bpel.def.Invoke;
9 import org.jbpm.bpel.wsdl.def.PartnerLinkType;
10 import org.jbpm.bpel.wsdl.impl.OperationImpl;
11 import org.jbpm.bpel.wsdl.impl.PartnerLinkTypeImpl;
12 import org.jbpm.bpel.wsdl.impl.PortTypeImpl;
13
14 public class InvokerDbTest extends AbstractDbTestCase {
15   
16   BpelDefinition processDefinition;
17   Invoker invoker;
18   
19   public void setUp() {
20     super.setUp();
21     processDefinition = new BpelDefinition();
22     Invoke invoke = new Invoke("child");
23     invoker = invoke.getInvoker();
24     processDefinition.addNode(invoke);
25   }
26   
27   public void testInCorrelations() {
28     invoker.setInCorrelations(new Correlations());
29     
30     processDefinition = saveAndReload(processDefinition);
31     invoker = getInvoker();
32     
33     assertNotNull( invoker.getInCorrelations() );
34   }
35   
36   public void testOutCorrelations() {
37     invoker.setOutCorrelations(new Correlations());
38     
39     processDefinition = saveAndReload(processDefinition);
40     invoker = getInvoker();
41     
42     assertNotNull( invoker.getOutCorrelations() );
43   }
44   
45   public void testOperation() {
46     //prepare operation
47
PartnerLinkDefinition plinkDefinition = new PartnerLinkDefinition();
48     plinkDefinition.setName("pl");
49     PartnerLinkType plinkType = new PartnerLinkTypeImpl();
50     PartnerLinkTypeImpl.RoleImpl role = new PartnerLinkTypeImpl.RoleImpl();
51     plinkType.setFirstRole(role);
52     PortTypeImpl portType = new PortTypeImpl();
53     role.setPortType(portType);
54     Operation operation = new OperationImpl();
55     portType.addOperation(operation);
56     plinkDefinition.setPartnerLinkType(plinkType);
57     processDefinition.getScope().addPartnerLink(plinkDefinition);
58     
59     //set operation
60
invoker.setOperation(operation);
61     
62     processDefinition = saveAndReload(processDefinition);
63     invoker = getInvoker();
64
65     assertNotNull(invoker.getOperation());
66   }
67   
68   public void testPartnerLink() {
69     PartnerLinkDefinition pl = new PartnerLinkDefinition();
70     pl.setName("pl");
71     processDefinition.getScope().addPartnerLink(pl);
72     invoker.setPartnerLink(pl);
73     
74     processDefinition = saveAndReload(processDefinition);
75     invoker = getInvoker();
76
77     assertNotNull( invoker.getPartnerLink() );
78   }
79   
80   public void testInputVariable() {
81     VariableDefinition variable = new VariableDefinition();
82     variable.setName("v");
83     processDefinition.getScope().addVariable(variable);
84     invoker.setInputVariable(variable);
85     
86     processDefinition = saveAndReload(processDefinition);
87
88     assertNotNull( getInvoker().getInputVariable() );
89   }
90   
91   public void testOutputVariable() {
92     VariableDefinition variable = new VariableDefinition();
93     variable.setName("v");
94     processDefinition.getScope().addVariable(variable);
95     invoker.setOutputVariable(variable);
96     
97     processDefinition = saveAndReload(processDefinition);
98
99     assertNotNull( getInvoker().getOutputVariable() );
100   }
101   
102   private Invoker getInvoker() {
103     Invoke invoke = ((Invoke) processDefinition.getNode("child"));
104     return invoke.getInvoker();
105   }
106 }
107
Popular Tags