Wednesday, February 11, 2015

Oracle BPM : Get List of Parametric roles using BPM api's

package com.raylabs.bpm;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import oracle.bpel.services.bpm.common.IBPMContext;
import oracle.bpel.services.workflow.client.IWorkflowServiceClientConstants;
import oracle.bpel.services.workflow.client.WorkflowServiceClientFactory;
import oracle.bpm.client.BPMServiceClientFactory;
import oracle.bpm.services.client.IBPMServiceClient;
import oracle.bpm.services.organization.IBPMOrganizationService;
import oracle.bpm.services.organization.model.LogicalPeopleGroup;
import oracle.bpm.services.organization.model.LogicalPeopleGroupList;
import oracle.bpm.services.organization.model.Organization;
import oracle.bpm.services.organization.model.ParameterListType;
import oracle.bpm.services.organization.model.ParameterType;
import oracle.bpm.services.organization.model.PeopleQueryType;
public class Class1 {
private static String username;
private static String password;
private static String environment;
private static String serverPort;
private static String user;
private static String role;
private Class1() {
super();
}
public static void main(String[] args) {
username = "xxx";
password = "xxxx";
environment = "dev";
serverPort = "232232";
BPMServiceClientFactory wfSvcClient = null;
IBPMContext bpmCtx = null;
IBPMServiceClient bPMServiceClient = null;
try {
final Map connectionProperty = getConnProp();
wfSvcClient =
BPMServiceClientFactory.getInstance(connectionProperty,
null, null);
bPMServiceClient = wfSvcClient.getBPMServiceClient();
IBPMOrganizationService bpmOrgSvc =
bPMServiceClient.getBPMOrganizationService();
bpmCtx =
(IBPMContext)wfSvcClient.getWorkflowServiceClient().getTaskQueryService().authenticate(null,
null,
null);
Organization org = bpmOrgSvc.exportOrganization(bpmCtx);
LogicalPeopleGroupList groupList = org.getLogicalPeopleGroupList();
List<LogicalPeopleGroup> group = groupList.getLogicalPeopleGroup();
Iterator<LogicalPeopleGroup> iterator = group.iterator();
while (iterator.hasNext()) {
LogicalPeopleGroup logicalPeopleGroup = iterator.next();
System.out.println("Parametric roles :" +
logicalPeopleGroup.getName());
PeopleQueryType peopleQuery =
logicalPeopleGroup.getPeopleQuery();
//Parameters
ParameterListType listType = peopleQuery.getParameters();
List<ParameterType> list = listType.getParameter();
Iterator<ParameterType> iterator1 = list.iterator();
while (iterator1.hasNext()) {
ParameterType parmeter = iterator1.next();
System.out.println("Parmeter name :" + parmeter.getName() +
" Parameter type :" +
parmeter.getType());
}
//Predicate
//PredicateType predicate = peopleQuery.getPredicate();
System.out.println("------------------------------------");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
public static Map getConnProp() throws Exception {
final Map connProp = new HashMap();
try {
connProp.put(IWorkflowServiceClientConstants.CONNECTION_PROPERTY.EJB_INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
connProp.put(IWorkflowServiceClientConstants.CONNECTION_PROPERTY.EJB_PROVIDER_URL,
"t3://" + environment +
"-abc.com:" + serverPort);
connProp.put(IWorkflowServiceClientConstants.CONNECTION_PROPERTY.EJB_SECURITY_PRINCIPAL,
username);
connProp.put(IWorkflowServiceClientConstants.CONNECTION_PROPERTY.EJB_SECURITY_CREDENTIALS,
password);
connProp.put(IWorkflowServiceClientConstants.CONNECTION_PROPERTY.CLIENT_TYPE,
WorkflowServiceClientFactory.REMOTE_CLIENT);
} catch (Exception e) {
e.printStackTrace();
}
return connProp;
}
}

Libraries :


No comments:

Post a Comment