use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelper method assignBusinessAdministrators.
@SuppressWarnings("unchecked")
protected void assignBusinessAdministrators(WorkItem workItem, PeopleAssignments peopleAssignments) {
List<OrganizationalEntity> businessAdministrators = peopleAssignments.getBusinessAdministrators();
Object businessAdminGroupIds = adjustParam(workItem.getParameter(BUSINESSADMINISTRATOR_GROUP_ID), groupFilter);
Object businessAdministratorIds = adjustParam(workItem.getParameter(BUSINESSADMINISTRATOR_ID), userFilter);
if (!hasAdminAssigned(businessAdministrators)) {
User administrator = TaskModelProvider.getFactory().newUser();
((InternalOrganizationalEntity) administrator).setId(administratorUser);
businessAdministrators.add(administrator);
Group adminGroup = TaskModelProvider.getFactory().newGroup();
((InternalOrganizationalEntity) adminGroup).setId(administratorGroup);
businessAdministrators.add(adminGroup);
}
if (businessAdministratorIds instanceof Collection) {
processPeopleAssignments((Collection<OrganizationalEntity>) businessAdministratorIds, businessAdministrators);
} else {
processPeopleAssignments((String) businessAdministratorIds, businessAdministrators, true);
}
if (businessAdminGroupIds instanceof Collection) {
processPeopleAssignments((Collection<OrganizationalEntity>) businessAdminGroupIds, businessAdministrators);
} else {
processPeopleAssignments((String) businessAdminGroupIds, businessAdministrators, false);
}
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelper method assignActors.
@SuppressWarnings("unchecked")
protected void assignActors(WorkItem workItem, PeopleAssignments peopleAssignments, InternalTaskData taskData) {
List<OrganizationalEntity> potentialOwners = peopleAssignments.getPotentialOwners();
Object actorIds = adjustParam(workItem.getParameter(ACTOR_ID), userFilter);
if (actorIds instanceof Collection) {
processPeopleAssignments((Collection<OrganizationalEntity>) actorIds, potentialOwners);
} else {
processPeopleAssignments((String) actorIds, potentialOwners, true);
}
// Set the first user as creator ID??? hmmm might be wrong
if (potentialOwners.size() > 0 && taskData.getCreatedBy() == null) {
OrganizationalEntity firstPotentialOwner = potentialOwners.get(0);
taskData.setCreatedBy((User) firstPotentialOwner);
}
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelperTest method testAssignActorsWithCustomSeparator.
@Test
public void testAssignActorsWithCustomSeparator() {
peopleAssignmentHelper = new PeopleAssignmentHelper(":");
String actorId = "user1:user2";
Task task = TaskModelProvider.getFactory().newTask();
InternalTaskData taskData = (InternalTaskData) TaskModelProvider.getFactory().newTaskData();
PeopleAssignments peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
WorkItem workItem = new WorkItemImpl();
workItem.setParameter(PeopleAssignmentHelper.ACTOR_ID, actorId);
peopleAssignmentHelper.assignActors(workItem, peopleAssignments, taskData);
OrganizationalEntity organizationalEntity1 = peopleAssignments.getPotentialOwners().get(0);
assertTrue(organizationalEntity1 instanceof User);
assertEquals("user1", organizationalEntity1.getId());
assertEquals("user1", taskData.getCreatedBy().getId());
OrganizationalEntity organizationalEntity2 = peopleAssignments.getPotentialOwners().get(1);
assertTrue(organizationalEntity2 instanceof User);
assertEquals("user2", organizationalEntity2.getId());
workItem = new WorkItemImpl();
peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
workItem.setParameter(PeopleAssignmentHelper.ACTOR_ID, actorId + ": drbug ");
peopleAssignmentHelper.assignActors(workItem, peopleAssignments, taskData);
assertEquals(3, peopleAssignments.getPotentialOwners().size());
organizationalEntity1 = peopleAssignments.getPotentialOwners().get(0);
assertEquals("user1", organizationalEntity1.getId());
assertEquals("user1", taskData.getCreatedBy().getId());
organizationalEntity2 = peopleAssignments.getPotentialOwners().get(1);
assertTrue(organizationalEntity2 instanceof User);
assertEquals("user2", organizationalEntity2.getId());
OrganizationalEntity organizationalEntity3 = peopleAssignments.getPotentialOwners().get(2);
assertEquals("drbug", organizationalEntity3.getId());
workItem = new WorkItemImpl();
peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
workItem.setParameter(PeopleAssignmentHelper.ACTOR_ID, "");
peopleAssignmentHelper.assignActors(workItem, peopleAssignments, taskData);
assertEquals(0, peopleAssignments.getPotentialOwners().size());
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelperTest method testAssignBusinessAdministrators.
@Test
public void testAssignBusinessAdministrators() {
String businessAdministratorId = "espiegelberg";
Task task = TaskModelProvider.getFactory().newTask();
PeopleAssignments peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
WorkItem workItem = new WorkItemImpl();
workItem.setParameter(PeopleAssignmentHelper.BUSINESSADMINISTRATOR_ID, businessAdministratorId);
peopleAssignmentHelper.assignBusinessAdministrators(workItem, peopleAssignments);
assertEquals(3, peopleAssignments.getBusinessAdministrators().size());
OrganizationalEntity organizationalEntity1 = peopleAssignments.getBusinessAdministrators().get(0);
assertTrue(organizationalEntity1 instanceof User);
assertEquals("Administrator", organizationalEntity1.getId());
OrganizationalEntity organizationalEntity2 = peopleAssignments.getBusinessAdministrators().get(1);
assertTrue(organizationalEntity2 instanceof Group);
assertEquals("Administrators", organizationalEntity2.getId());
OrganizationalEntity organizationalEntity3 = peopleAssignments.getBusinessAdministrators().get(2);
assertTrue(organizationalEntity3 instanceof User);
assertEquals(businessAdministratorId, organizationalEntity3.getId());
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelperTest method testAssignGroups.
@Test
public void testAssignGroups() {
String groupId = "Software Developers, Project Managers";
Task task = TaskModelProvider.getFactory().newTask();
PeopleAssignments peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
WorkItem workItem = new WorkItemImpl();
workItem.setParameter(PeopleAssignmentHelper.GROUP_ID, groupId);
peopleAssignmentHelper.assignGroups(workItem, peopleAssignments);
OrganizationalEntity organizationalEntity1 = peopleAssignments.getPotentialOwners().get(0);
assertTrue(organizationalEntity1 instanceof Group);
assertEquals("Software Developers", organizationalEntity1.getId());
OrganizationalEntity organizationalEntity2 = peopleAssignments.getPotentialOwners().get(1);
assertTrue(organizationalEntity2 instanceof Group);
assertEquals("Project Managers", organizationalEntity2.getId());
}
Aggregations