Refine search
@Override public void afterTaskNominatedEvent(TaskEvent event) { String userId = event.getTaskContext().getUserId(); Task ti = event.getTask(); TaskPersistenceContext persistenceContext = getPersistenceContext(((TaskContext)event.getTaskContext()).getPersistenceContext()); try { persistenceContext.persist(new TaskEventImpl(ti.getId(), org.kie.internal.task.api.model.TaskEvent.TaskEventType.NOMINATED, userId, new Date())); AuditTaskImpl auditTaskImpl = getAuditTask(event, persistenceContext, ti); if (auditTaskImpl == null) { logger.warn("Unable find audit task entry for task id {} '{}', skipping audit task update", ti.getId(), ti.getName()); return; } auditTaskImpl.setDescription(ti.getDescription()); auditTaskImpl.setName(ti.getName()); auditTaskImpl.setActivationTime(ti.getTaskData().getActivationTime()); auditTaskImpl.setPriority(ti.getPriority()); auditTaskImpl.setDueDate(ti.getTaskData().getExpirationTime()); auditTaskImpl.setStatus(ti.getTaskData().getStatus().name()); auditTaskImpl.setActualOwner(getActualOwner(ti)); auditTaskImpl.setLastModificationDate(event.getEventDate()); persistenceContext.merge(auditTaskImpl); } finally { cleanup(persistenceContext); } }
out.writeUTF(status.toString()); } else { out.writeBoolean(false); actualOwner.writeExternal(out); } else { out.writeBoolean(false); createdBy.writeExternal(out); } else { out.writeBoolean(false); out.writeLong(createdOn.getTime()); } else { out.writeBoolean(false); out.writeLong(activationTime.getTime()); } else { out.writeBoolean(false); out.writeLong(expirationTime.getTime()); } else { out.writeBoolean(false);
} else if (createdOn.getTime() != other.createdOn.getTime()) return false; if (expirationTime == null) { if (other.expirationTime != null) return false; } else if (expirationTime.getTime() != other.expirationTime.getTime()) return false; if (skipable != other.skipable) return false; if (workItemId != other.workItemId) return false; if (status == null) { if (other.status != null) return false; } else if (!status.equals(other.status)) return false; if (previousStatus == null) { if (other.previousStatus != null) return false; } else if (!previousStatus.equals(other.previousStatus)) return false; if (activationTime == null) { if (other.activationTime != null) return false;
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { if (in.readBoolean()) { status = Status.valueOf(in.readUTF()); previousStatus = Status.valueOf(in.readUTF()); actualOwner.readExternal(in); createdBy.readExternal(in); createdOn = new Date(in.readLong()); activationTime = new Date(in.readLong()); expirationTime = new Date(in.readLong());
addCountDownListner(countDownListener); Map<String, Object> vars = new HashMap<String, Object>(); vars.put("now", new Date()); inputVars.put("NotCompletedReassign", "[users:Tony Stark,Bobba Fet,Jabba Hutt|groups:]@[500ms]"); taskService.addTask(task, inputVars); long taskId = task.getId(); List<OrganizationalEntity> potentialOwners = (List<OrganizationalEntity>) task.getPeopleAssignments().getPotentialOwners(); List<String> ids = new ArrayList<String>(potentialOwners.size()); for (OrganizationalEntity entity : potentialOwners) { assertEquals(Status.Reserved.toString(), auditTask.getStatus()); assertEquals("Tony Stark", auditTask.getActualOwner()); assertNull(task.getTaskData().getActualOwner()); assertEquals(Status.Ready, task.getTaskData().getStatus()); potentialOwners = (List<OrganizationalEntity>) task.getPeopleAssignments().getPotentialOwners(); assertEquals(Status.Ready.toString(), auditTask.getStatus()); assertEquals("", auditTask.getActualOwner());
@Override public void afterTaskForwardedEvent(TaskEvent event) { String userId = event.getTaskContext().getUserId(); Task ti = event.getTask(); StringBuilder message = new StringBuilder(); String entitiesAsString = (ti.getPeopleAssignments().getPotentialOwners()).stream().map(oe -> oe.getId()).collect(Collectors.joining(",")); message.append("Forward to [" + entitiesAsString + "]"); TaskEventImpl taskEvent = new TaskEventImpl(ti.getId(), org.kie.internal.task.api.model.TaskEvent.TaskEventType.FORWARDED, ti.getTaskData().getProcessInstanceId(), ti.getTaskData().getWorkItemId(), userId, message.toString()); AuditTaskImpl auditTaskImpl = createAuditTask(ti, event.getEventDate()); auditTaskImpl.setDescription(ti.getDescription()); auditTaskImpl.setName(ti.getName()); auditTaskImpl.setActivationTime(ti.getTaskData().getActivationTime()); auditTaskImpl.setPriority(ti.getPriority()); auditTaskImpl.setDueDate(ti.getTaskData().getExpirationTime()); auditTaskImpl.setStatus(ti.getTaskData().getStatus().name()); auditTaskImpl.setActualOwner(getActualOwner(ti)); auditTaskImpl.setLastModificationDate(event.getEventDate()); sendMessage(new AuditTaskData(auditTaskImpl, taskEvent), 4); }
protected AuditTaskImpl createAuditTask(Task ti, Date date) { AuditTaskImpl auditTaskImpl = new AuditTaskImpl( ti.getId(), ti.getName(), ti.getTaskData().getStatus().name(), ti.getTaskData().getActivationTime(), (ti.getTaskData().getActualOwner() != null) ? ti.getTaskData().getActualOwner().getId() : "", ti.getDescription(), ti.getPriority(), (ti.getTaskData().getCreatedBy() != null) ? ti.getTaskData().getCreatedBy().getId() : "", ti.getTaskData().getCreatedOn(), ti.getTaskData().getExpirationTime(), ti.getTaskData().getProcessInstanceId(), ti.getTaskData().getProcessId(), ti.getTaskData().getProcessSessionId(), ti.getTaskData().getDeploymentId(), ti.getTaskData().getParentId(), ti.getTaskData().getWorkItemId(), date ); return auditTaskImpl; }
@Override public void afterTaskFailedEvent(TaskEvent event) { String userId = event.getTaskContext().getUserId(); Task ti = event.getTask(); TaskPersistenceContext persistenceContext = getPersistenceContext(((TaskContext)event.getTaskContext()).getPersistenceContext()); try { persistenceContext.persist(new TaskEventImpl(ti.getId(), org.kie.internal.task.api.model.TaskEvent.TaskEventType.FAILED, ti.getTaskData().getProcessInstanceId(), ti.getTaskData().getWorkItemId(), userId)); AuditTaskImpl auditTaskImpl = getAuditTask(event, persistenceContext, ti); if (auditTaskImpl == null) { logger.warn("Unable find audit task entry for task id {} '{}', skipping audit task update", ti.getId(), ti.getName()); return; } auditTaskImpl.setStatus(ti.getTaskData().getStatus().name()); auditTaskImpl.setActualOwner(getActualOwner(ti)); auditTaskImpl.setLastModificationDate(event.getEventDate()); persistenceContext.merge(auditTaskImpl); } finally { cleanup(persistenceContext); } }
return; this.compositeId = System.getProperty("org.kie.server.id", "") + "_" + source.getId(); this.activationTime = source.getTaskData().getActivationTime(); this.actualOwner = safeOrgEntity(source.getTaskData().getActualOwner()); this.businessAdmins = source.getPeopleAssignments().getBusinessAdministrators() .stream() .map(entity -> safeOrgEntity(entity)) .collect(Collectors.toList()); this.containerId = source.getTaskData().getDeploymentId(); this.createdBy = safeOrgEntity(source.getTaskData().getCreatedBy()); this.createdOn = source.getTaskData().getCreatedOn(); this.processInstanceId = source.getTaskData().getProcessInstanceId(); this.skipable = source.getTaskData().isSkipable(); this.status = source.getTaskData().getStatus().name(); this.subject = source.getSubject(); this.taskType = source.getTaskType();
@Override public void afterTaskActivatedEvent(TaskEvent event) { String userId = event.getTaskContext().getUserId(); Task ti = event.getTask(); TaskEventImpl taskEvent = new TaskEventImpl(ti.getId(), org.kie.internal.task.api.model.TaskEvent.TaskEventType.ACTIVATED, ti.getTaskData().getProcessInstanceId(), ti.getTaskData().getWorkItemId(), userId); AuditTaskImpl auditTaskImpl = createAuditTask(ti, event.getEventDate()); auditTaskImpl.setStatus(ti.getTaskData().getStatus().name()); auditTaskImpl.setActualOwner(getActualOwner(ti)); auditTaskImpl.setDescription(ti.getDescription()); auditTaskImpl.setLastModificationDate(event.getEventDate()); sendMessage(new AuditTaskData(auditTaskImpl, taskEvent), 8); }
Status status = newStatus != null ? newStatus : ti.getTaskData().getStatus(); if (ti.getTaskData().getActualOwner() != null) { actualOwner = ti.getTaskData().getActualOwner().getId(); result = new BAMTaskSummaryImpl(ti.getId(), ti.getName(), status.toString(), event.getEventDate(), actualOwner, ti.getTaskData().getProcessInstanceId()); if (worker != null) worker.createTask(result, ti); persistenceContext.persist(result);
Status status = newStatus != null ? newStatus : ti.getTaskData().getStatus(); result = persistenceContext.queryStringWithParametersInTransaction("select bts from BAMTaskSummaryImpl bts where bts.taskId=:taskId", true, persistenceContext.addParametersToMap("taskId", ti.getId()), BAMTaskSummaryImpl.class); logger.warn("Unable find bam task entry for task id {} '{}', skipping bam task update", ti.getId(), ti.getName()); return null; result.setStatus(status.toString()); if (ti.getTaskData().getActualOwner() != null) { result.setUserId(ti.getTaskData().getActualOwner().getId()); persistenceContext.merge(result);
assertNotNull( "Null actual owner on task " + task.getId() + " [status: " + task.getTaskData().getStatus().toString() + "]", task.getTaskData().getActualOwner() ); String actualOwnerId = task.getTaskData().getActualOwner().getId(); assertEquals( "Incorrect status for task " + task.getId(), Status.InProgress, task.getTaskData().getStatus() ); taskSum.getActualOwner() ); assertNotNull( "Null actual owner id in task summary " + taskSum.getId() + " [status: " + taskSum.getStatus() + "]", taskSum.getActualOwner().getId() ); assertEquals( "Incorrect actual owner on task summary" , actualOwnerId, taskSum.getActualOwnerId() );
private Optional<Task> getTaskToComplete(String user) { Optional<Task> task = Optional.empty(); if (tasks.containsKey(user)) { Collection<Task> taskCollection = tasks.get(user); if (!taskCollection.isEmpty()) { task = taskCollection.stream().filter(t -> !t.getTaskData().getStatus().equals(Status.Completed)).findFirst(); } } if (!task.isPresent()) { logger.warn("No task to complete found for {}",user); } return task; } }
@Override public BAMTaskSummaryQueryBuilder taskStatus( Status... status ) { String [] stringStatuses = null; if( status != null ) { stringStatuses = new String[status.length]; for( int i = 0; i < status.length; ++i ) { stringStatuses[i] = status[i].toString(); } } addObjectParameter(TASK_STATUS_LIST, "task status", stringStatuses); return this; }
public Void execute(Context cntxt) { TaskContext context = (TaskContext) cntxt; doCallbackUserOperation(userId, context, true); groupIds = doUserGroupCallbackOperation(userId, null, context); context.set("local:groups", groupIds); context.getTaskInstanceService().release(taskId, userId); Task task = context.getPersistenceContext().findTask(taskId); if(task.getTaskData().getPreviousStatus().equals(Status.InProgress)) { DeadlineSchedulerHelper.rescheduleDeadlinesForTask((InternalTask) task, context, DeadlineType.START); } return null; }
public static List<Status> buildTaskStatuses(List<String> status) { if (status == null || status.isEmpty()) { return null; } List<Status> taskStatuses = new ArrayList<Status>(); for (String s : status) { taskStatuses.add(Status.valueOf(s)); } return taskStatuses; }
status = Status.valueOf(in.readUTF()); actualOwner.readExternal(in); createdBy.readExternal(in); createdOn = new Date(in.readLong()); activationTime = new Date(in.readLong()); expirationTime = new Date(in.readLong());