1 29 30 package hero.client.samples; 31 import javax.security.auth.login.LoginContext ; 32 import hero.client.test.SimpleCallbackHandler; 33 34 import hero.interfaces.ProjectSession; 35 import hero.interfaces.ProjectSessionHome; 36 import hero.interfaces.ProjectSessionUtil; 37 38 import hero.interfaces.Constants; 39 40 public class Sample1CreateSubProcessModel { 41 42 static public void main(String [] args) throws Exception { 43 char[] password={'t','o','t','o'}; 45 SimpleCallbackHandler handler = new SimpleCallbackHandler("admin",password); 46 LoginContext lc = new LoginContext ("TestClient", handler); 47 lc.login(); 48 49 52 ProjectSessionHome prjHome= (ProjectSessionHome) ProjectSessionUtil.getHome(); 54 ProjectSession prjSession = prjHome.create(); 55 56 prjSession.initModel("Customer Service"); 58 59 prjSession.addNode("Ask Customer",Constants.Nd.AND_JOIN_NODE); 63 prjSession.setNodeTraditional("Ask Customer"); 64 65 prjSession.addNode("Notify Sales",Constants.Nd.AND_JOIN_NODE); 66 prjSession.setNodeTraditional("Notify Sales"); 67 68 69 prjSession.addEdge("Ask Customer","Notify Sales"); 71 72 73 String scriptHook1 = 76 "import hero.interfaces.*;\n" 77 + "import hero.interfaces.BnNodeLocal;\n" 78 + "afterStart (Object b,Object n) {\n\n\n" 79 + "System.out.println(\"customer name: \"+ customer_name);" 80 + "System.out.println(\"product name: \"+ product_name);" 81 + "System.out.println(\"items : \"+ items );" 82 + "}"; 83 prjSession.addNodeInterHook("Ask Customer","order data",Constants.Nd.AFTERSTART,Constants.Hook.BSINTERACTIVE,scriptHook1); 84 String scriptHook2 = 87 " import hero.interfaces.* ;" 88 + "import hero.interfaces.BnNodeLocal;\n" 89 + "afterTerminate (Object b,Object n) {\n\n\n" 90 + "System.out.println(\"partial_sales_status = OK\"); \n" 91 + "hero.interfaces.ProjectSessionLocalHome pHome = (hero.interfaces.ProjectSessionLocalHome) hero.interfaces.ProjectSessionUtil.getLocalHome(); \n" 92 + "hero.interfaces.ProjectSessionLocal subProcess = pHome.create(); \n" 93 + "subProcess.initModel(n.getBnProject().getName()); \n" 94 + "subProcess.setProperty(\"partial_sales_status\",\"ok\"); \n" 95 +"}" ; 96 prjSession.addNodeInterHook("Notify Sales","Set property",Constants.Nd.AFTERTERMINATE,Constants.Hook.BSINTERACTIVE,scriptHook2); 97 98 99 prjSession.addRole("agent","Customer Service agent"); 101 prjSession.addRole("customer","Sales order customer"); 102 103 prjSession.setNodeRole("Ask Customer","customer"); 105 prjSession.setNodeRole("Notify Sales","agent"); 106 107 108 prjSession.addRoleMapper("agent","hero.mapper.Sample1CustomAgentGroupMembers",Constants.Mapper.CUSTOM); 110 prjSession.addRoleMapper("customer","hero.mapper.Sample1CustomCustomerGroupMembers",Constants.Mapper.CUSTOM); 111 } 112 113 114 } 115 116 117 | Popular Tags |