use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelperTest method testAssignBusinessAdministratorsChangedDefaults.
@Test
public void testAssignBusinessAdministratorsChangedDefaults() {
peopleAssignmentHelper = new PeopleAssignmentHelper("myadmin", "mygroup");
Task task = TaskModelProvider.getFactory().newTask();
PeopleAssignments peopleAssignments = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
WorkItem workItem = new WorkItemImpl();
peopleAssignmentHelper.assignBusinessAdministrators(workItem, peopleAssignments);
assertEquals(2, peopleAssignments.getBusinessAdministrators().size());
OrganizationalEntity organizationalEntity1 = peopleAssignments.getBusinessAdministrators().get(0);
assertTrue(organizationalEntity1 instanceof User);
assertEquals("myadmin", organizationalEntity1.getId());
OrganizationalEntity organizationalEntity2 = peopleAssignments.getBusinessAdministrators().get(1);
assertTrue(organizationalEntity2 instanceof Group);
assertEquals("mygroup", organizationalEntity2.getId());
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class PeopleAssignmentHelperTest method testHandleMultiPeopleAssignments.
@Test
public void testHandleMultiPeopleAssignments() {
InternalTask task = (InternalTask) TaskModelProvider.getFactory().newTask();
InternalTaskData taskData = (InternalTaskData) TaskModelProvider.getFactory().newTaskData();
InternalPeopleAssignments peopleAssignment = peopleAssignmentHelper.getNullSafePeopleAssignments(task);
assertNotNull(peopleAssignment);
assertEquals(0, peopleAssignment.getPotentialOwners().size());
assertEquals(0, peopleAssignment.getBusinessAdministrators().size());
assertEquals(0, peopleAssignment.getTaskStakeholders().size());
String actorId = "espiegelberg,john";
String taskStakeholderId = "drmary,krisv";
String businessAdministratorId = "drbug,peter";
String businessAdministratorGroupId = "Super users,Flow administrators";
String excludedOwnerId = "john,poul";
String recipientId = "mary,steve";
WorkItem workItem = new WorkItemImpl();
workItem.setParameter(PeopleAssignmentHelper.ACTOR_ID, actorId);
workItem.setParameter(PeopleAssignmentHelper.TASKSTAKEHOLDER_ID, taskStakeholderId);
workItem.setParameter(PeopleAssignmentHelper.BUSINESSADMINISTRATOR_ID, businessAdministratorId);
workItem.setParameter(PeopleAssignmentHelper.BUSINESSADMINISTRATOR_GROUP_ID, businessAdministratorGroupId);
workItem.setParameter(PeopleAssignmentHelper.EXCLUDED_OWNER_ID, excludedOwnerId);
workItem.setParameter(PeopleAssignmentHelper.RECIPIENT_ID, recipientId);
peopleAssignmentHelper.handlePeopleAssignments(workItem, task, taskData);
List<OrganizationalEntity> potentialOwners = task.getPeopleAssignments().getPotentialOwners();
assertEquals(2, potentialOwners.size());
assertEquals("espiegelberg", potentialOwners.get(0).getId());
assertEquals("john", potentialOwners.get(1).getId());
List<OrganizationalEntity> businessAdministrators = task.getPeopleAssignments().getBusinessAdministrators();
assertEquals(6, businessAdministrators.size());
assertEquals("Administrator", businessAdministrators.get(0).getId());
// Admin group
assertEquals("Administrators", businessAdministrators.get(1).getId());
assertEquals("drbug", businessAdministrators.get(2).getId());
assertEquals("peter", businessAdministrators.get(3).getId());
assertEquals("Super users", businessAdministrators.get(4).getId());
assertEquals("Flow administrators", businessAdministrators.get(5).getId());
List<OrganizationalEntity> taskStakehoders = ((InternalPeopleAssignments) task.getPeopleAssignments()).getTaskStakeholders();
assertEquals(2, taskStakehoders.size());
assertEquals("drmary", taskStakehoders.get(0).getId());
assertEquals("krisv", taskStakehoders.get(1).getId());
List<OrganizationalEntity> excludedOwners = ((InternalPeopleAssignments) task.getPeopleAssignments()).getExcludedOwners();
assertEquals(2, excludedOwners.size());
assertEquals("john", excludedOwners.get(0).getId());
assertEquals("poul", excludedOwners.get(1).getId());
List<OrganizationalEntity> recipients = ((InternalPeopleAssignments) task.getPeopleAssignments()).getRecipients();
assertEquals(2, recipients.size());
assertEquals("mary", recipients.get(0).getId());
assertEquals("steve", recipients.get(1).getId());
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class TestPersistenceContext method createSomeTask.
public void createSomeTask() {
testIsInitialized();
TaskImpl task = new TaskImpl();
InternalI18NText name = (InternalI18NText) TaskModelProvider.getFactory().newI18NText();
name.setText("Some Task");
List<I18NText> names = new ArrayList<I18NText>();
names.add(name);
task.setNames(names);
InternalTaskData taskData = (InternalTaskData) TaskModelProvider.getFactory().newTaskData();
taskData.setWorkItemId(12);
taskData.setProcessInstanceId(1);
taskData.setProcessId("someprocess");
taskData.setDeploymentId("org.jbpm.test:someprocess:1.0");
taskData.setProcessSessionId(1);
task.setTaskData(taskData);
InternalPeopleAssignments peopleAssignments = (InternalPeopleAssignments) TaskModelProvider.getFactory().newPeopleAssignments();
peopleAssignments.setPotentialOwners(new ArrayList<OrganizationalEntity>());
peopleAssignments.setBusinessAdministrators(new ArrayList<OrganizationalEntity>());
peopleAssignments.setExcludedOwners(new ArrayList<OrganizationalEntity>());
peopleAssignments.setRecipients(new ArrayList<OrganizationalEntity>());
peopleAssignments.setTaskStakeholders(new ArrayList<OrganizationalEntity>());
InternalOrganizationalEntity jdoe = (InternalOrganizationalEntity) TaskModelProvider.getFactory().newUser();
jdoe.setId("jdoe");
peopleAssignments.getPotentialOwners().add(jdoe);
peopleAssignments.getBusinessAdministrators().add(jdoe);
task.setPeopleAssignments(peopleAssignments);
final boolean txOwner = transactionManager.begin();
try {
EntityManager em = entityManagerFactory.createEntityManager();
em.persist(jdoe);
em.persist(task);
transactionManager.commit(txOwner);
} catch (Exception ex) {
ex.printStackTrace();
transactionManager.rollback(txOwner);
throw new RuntimeException(ex.getMessage(), ex);
}
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class TaskFluent method setAdminGroup.
public TaskFluent setAdminGroup(String groupId) {
if (assignments.getBusinessAdministrators().isEmpty()) {
List<OrganizationalEntity> businessAdmins = new ArrayList<OrganizationalEntity>();
assignments.setBusinessAdministrators(businessAdmins);
}
assignments.getBusinessAdministrators().add(new GroupImpl(groupId));
return this;
}
use of org.kie.api.task.model.OrganizationalEntity in project jbpm by kiegroup.
the class TaskFluent method addPotentialUser.
public TaskFluent addPotentialUser(String userId) {
if (assignments.getPotentialOwners().isEmpty()) {
List<OrganizationalEntity> potentialOwners = new ArrayList<OrganizationalEntity>();
assignments.setPotentialOwners(potentialOwners);
}
assignments.getPotentialOwners().add(new UserImpl(userId));
return this;
}
Aggregations