01: package client.Java_client;
02:
03: import javax.security.auth.login.LoginContext;
04: import hero.client.test.SimpleCallbackHandler;
05:
06: import hero.interfaces.*;
07: import java.util.*;
08:
09: public class InstantiateApproval {
10:
11: static public void main(String[] args) throws Exception {
12: // Admin login
13: char[] password = { 't', 'o', 't', 'o' };
14: SimpleCallbackHandler handler = new SimpleCallbackHandler(
15: "admin", password);
16: LoginContext lc = new LoginContext("TestClient", handler);
17: lc.login();
18:
19: // Create an instance of the ProjectSession API
20: ProjectSessionHome projectSessionh = ProjectSessionUtil
21: .getHome();
22: ProjectSession ps = projectSessionh.create();
23:
24: // Check if the process model exists
25: if (ps.existingProject("Approval_workflow")) {
26: // Creates 30 workflow instances
27: for (int index = 0; index < 30; index++)
28: ps.instantiateProject("Approval_workflow");
29:
30: System.out
31: .println("30 instances of the Approval Workflow process where created and assigned to the default user \n");
32: // Creates an instance of the UserSession API
33: UserSessionHome usersh = UserSessionUtil.getHome();
34: UserSession usr = usersh.create();
35: System.out
36: .println("Activities todo list will be retrieved using the pagination API \n");
37: // List the user todo list using the pagination pattern API
38: Collection pks = usr.getToDoListAllInstancesAsPK();
39: int i = 0;
40: while (i < pks.size()) {
41: int maxnumber = i + 10;
42: System.out.println("Activities from " + i + " to "
43: + maxnumber);
44: Collection activities = usr
45: .getToDoListAllInstancesByPK(pks, i, 10);
46: Iterator acts = activities.iterator();
47: while (acts.hasNext()) {
48: BnNodeValue node = (BnNodeValue) acts.next();
49: System.out.println("Activity Name = "
50: + node.getName() + ", from Instance Name= "
51: + node.getBnProject().getName());
52: }
53: i = maxnumber;
54: }
55: } else
56: throw new Exception(
57: "The Approval_workflow model was not deployed in the engine, please deploy it first !");
58:
59: }
60: }
|