public List<Content> getAllContentByTaskId(long taskId) { Task task = persistenceContext.findTask(taskId); long inputContentId = task.getTaskData().getDocumentContentId(); long outputContentId = task.getTaskData().getOutputContentId(); long faultContentId = task.getTaskData().getFaultContentId(); List<Content> allContent = new ArrayList<Content>(); allContent.add(persistenceContext.findContent(inputContentId)); allContent.add(persistenceContext.findContent(outputContentId)); allContent.add(persistenceContext.findContent(faultContentId)); return allContent; }
Map<String, Object> results = new HashMap<String, Object>(); long contentId = task.getTaskData().getOutputContentId(); if (contentId != -1) { Content content = taskService.getContentById(contentId);
protected Map<String, Object> getTaskOutput(Task task) { long documentContentId = task.getTaskData().getOutputContentId(); if (documentContentId > 0) { Content contentById = taskService.getContentById(documentContentId); if (contentById == null) { return new HashMap<String, Object>(); } Object unmarshall = ContentMarshallerHelper.unmarshall(contentById.getContent(), null); return (Map<String, Object>) unmarshall; } return new HashMap<String, Object>(); } }
@Override public Map<String, Object> getContentMapForUser( Long taskId, String userId ) { // check permissions this.lifeCycleManager.taskOperation(Operation.View, taskId, userId, null, null, toGroups(null)); Task task = this.persistenceContext.findTask(taskId); if( task.getTaskData() != null && task.getTaskData().getOutputContentId() != null ) { Content content = this.persistenceContext.findContent(task.getTaskData().getOutputContentId()); ContentMarshallerContext mContext = TaskContentRegistry.get().getMarshallerContext(task); Object outputContent = ContentMarshallerHelper.unmarshall(content.getContent(), mContext.getEnvironment(), mContext.getClassloader()); if( outputContent instanceof Map ) { return (Map<String, Object>) outputContent; } else { throw new IllegalStateException("Output content for task " + taskId + " is not a Map<String, Object>!"); } } return null; }
public void deleteOutput(long taskId, String userId) { Task task = persistenceContext.findTask(taskId); long contentId = task.getTaskData().getOutputContentId(); Content content = persistenceContext.findContent(contentId); Map<String, Object> initialContent = new HashMap<>(); ContentMarshallerContext context = TaskContentRegistry.get().getMarshallerContext(task); Object unmarshalledObject = ContentMarshallerHelper.unmarshall(content.getContent(), context.getEnvironment(), context.getClassloader()); if(unmarshalledObject != null && unmarshalledObject instanceof Map){ // set initial content before updating with this params initialContent.putAll((Map<String, Object>)unmarshalledObject); } taskEventSupport.fireBeforeTaskOutputVariablesChanged(task, this.context, initialContent); ContentData data = TaskModelProvider.getFactory().newContentData(); persistenceContext.removeContent(content); persistenceContext.setOutputToTask(null, data, task); taskEventSupport.fireAfterTaskOutputVariablesChanged(task, this.context, null); }
public int removeTasks(List<TaskSummary> tasks) { int removedTasks = 0; for (TaskSummary sum : tasks) { long taskId = sum.getId(); // Only remove archived tasks Task task = persistenceContext.findTask(taskId); if (task != null) { Content content = persistenceContext.findContent(task.getTaskData().getDocumentContentId()); Content outputContent = persistenceContext.findContent(task.getTaskData().getOutputContentId()); if (((InternalTask) task).isArchived()) { persistenceContext.remove(task); if (content != null) { persistenceContext.remove(content); } if (outputContent != null) { persistenceContext.remove(outputContent); } removedTasks++; } else { logger.warn(" The Task cannot be removed if it wasn't archived first !!"); } } } return removedTasks; }
@Override public Task loadTaskVariables(Task task) { // load input if (task.getTaskData().getTaskInputVariables() == null) { Map<String, Object> input = loadContentData(task.getTaskData().getDocumentContentId(), task); ((InternalTaskData)task.getTaskData()).setTaskInputVariables(input); } // load output if (task.getTaskData().getTaskOutputVariables() == null) { Map<String, Object> output = loadContentData(task.getTaskData().getOutputContentId(), task); ((InternalTaskData)task.getTaskData()).setTaskOutputVariables(output); } return task; }
Task task = persistenceContext.findTask(taskId); loadTaskVariables(task); long outputContentId = task.getTaskData().getOutputContentId(); Content outputContent = persistenceContext.findContent(outputContentId);
this.outputContentId = taskData.getOutputContentId(); this.faultName = taskData.getFaultName(); this.faultType = taskData.getFaultType();
assertEquals(AccessType.Inline, ((InternalTaskData) task2.getTaskData()).getOutputAccessType()); assertEquals("java.util.HashMap", task2.getTaskData().getOutputType()); long contentId = task2.getTaskData().getOutputContentId(); assertTrue(contentId != -1); contentId = task.getTaskData().getOutputContentId();
long outputContentId = task1.getTaskData().getOutputContentId(); Content contentById = taskService.getContentById(outputContentId);
@Test public void testCompleteWithResults() { // One potential owner, should go straight to state Reserved String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) { } ), "; str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet'), new User('Darth Vader') ], businessAdministrators = [ new User('Administrator') ],}),"; str += "name = 'This is my task name' })"; Task task = TaskFactory.evalTask(new StringReader(str)); taskService.addTask(task, new HashMap<String, Object>()); long taskId = task.getId(); // Go straight from Ready to Inprogress taskService.start(taskId, "Darth Vader"); Task task1 = taskService.getTaskById(taskId); assertEquals(Status.InProgress, task1.getTaskData().getStatus()); assertEquals("Darth Vader", task1.getTaskData().getActualOwner().getId()); Map<String, Object> params = new HashMap<String, Object>(); params.put("content", "content"); taskService.complete(taskId, "Darth Vader", params); Task task2 = taskService.getTaskById(taskId); assertEquals(AccessType.Inline, ((InternalTaskData) task2.getTaskData()).getOutputAccessType()); assertEquals("java.util.HashMap", task2.getTaskData().getOutputType()); long contentId = task2.getTaskData().getOutputContentId(); assertTrue(contentId != -1); Content content = taskService.getContentById(contentId); Map<String, Object> unmarshalledObject = (Map<String, Object>) ContentMarshallerHelper.unmarshall(content.getContent(), null); assertEquals("content", unmarshalledObject.get("content")); }
protected String renderTaskForm(Task task, InputStream template, Map<String, Object> renderContext) { String result = null; try { Form form = formSerializationManager.loadFormFromXML(template); Map inputs = new HashMap(); Map outputs; if (task.getTaskData().getOutputContentId() == -1) outputs = new HashMap(); else outputs = (Map) renderContext.get("outputs"); Map m = (Map) renderContext.get("inputs"); if (m != null) inputs.putAll(m); inputs.put("task", task); // Adding forms to context while forms are'nt available on marshaller classloader FormRenderContext context = formRenderContextManager.newContext(form, task.getTaskData().getDeploymentId(), inputs, outputs); formRenderContentMarshaller.addContentMarshaller(context.getUID(), (ContentMarshallerContext) renderContext.get("marshallerContext")); String status = task.getTaskData().getStatus().name(); boolean readonly = !"InProgress".equals(status); context.setReadonly(readonly); result = context.getUID(); } catch (Exception e) { log.warn("Error rendering form: ", e); } return result; }
Map<String, Object> results = new HashMap<String, Object>(); long contentId = task.getTaskData().getOutputContentId(); if (contentId != -1) { Content content = taskService.getContentById(contentId);
long outputContentId = task.getTaskData().getOutputContentId(); if (outputContentId != -1) { Content content = contentService.getContentById(outputContentId);
genTaskData.setDocumentContentId(kieTaskData.getDocumentContentId()); genTaskData.setOutputType(kieTaskData.getOutputType()); genTaskData.setOutputContentId(kieTaskData.getOutputContentId()); genTaskData.setFaultName(kieTaskData.getFaultName()); genTaskData.setFaultType(kieTaskData.getFaultType());