public virtual object execute(CommandContext commandContext) { TaskManager taskManager = commandContext.TaskManager; TaskEntity task = taskManager.findTaskById(taskId); ensureNotNull("Task '" + taskId + "' not found", "task", task); foreach (CommandChecker checker in commandContext.ProcessEngineConfiguration.CommandCheckers) { checker.checkReadTaskVariable(task); } ensureNotNull("Task form definition for '" + taskId + "' not found", "task.getTaskDefinition()", task.TaskDefinition); TaskFormHandler taskFormHandler = task.TaskDefinition.TaskFormHandler; if (taskFormHandler == null) { return(null); } FormEngine formEngine = Context.ProcessEngineConfiguration.FormEngines[formEngineName]; ensureNotNull("No formEngine '" + formEngineName + "' defined process engine configuration", "formEngine", formEngine); TaskFormData taskForm = taskFormHandler.createTaskForm(task); return(formEngine.renderTaskForm(taskForm)); }
public virtual TaskFormData execute(CommandContext commandContext) { TaskManager taskManager = commandContext.TaskManager; TaskEntity task = taskManager.findTaskById(taskId); ensureNotNull("No task found for taskId '" + taskId + "'", "task", task); foreach (CommandChecker checker in commandContext.ProcessEngineConfiguration.CommandCheckers) { checker.checkReadTaskVariable(task); } if (task.TaskDefinition != null) { TaskFormHandler taskFormHandler = task.TaskDefinition.TaskFormHandler; ensureNotNull("No taskFormHandler specified for task '" + taskId + "'", "taskFormHandler", taskFormHandler); return(taskFormHandler.createTaskForm(task)); } else { // Standalone task, no TaskFormData available return(null); } }
public CreateTaskFormInvocation(TaskFormHandler taskFormHandler, TaskEntity task) : base(null, null) { this.taskFormHandler = taskFormHandler; this.task = task; }
public virtual VariableMap execute(CommandContext commandContext) { ensureNotNull("taskId", taskId); TaskManager taskManager = commandContext.TaskManager; TaskEntity task = taskManager.findTaskById(taskId); ensureNotNull("Cannot find task with id " + taskId, "task", task); foreach (CommandChecker checker in commandContext.ProcessEngineConfiguration.CommandCheckers) { checker.checkTaskWork(task); } TaskDefinition taskDefinition = task.TaskDefinition; if (taskDefinition != null) { TaskFormHandler taskFormHandler = taskDefinition.TaskFormHandler; taskFormHandler.submitFormVariables(properties, task); } else { // set variables on standalone task task.Variables = properties; } ExecutionEntity execution = task.ProcessInstance; ExecutionVariableSnapshotObserver variablesListener = null; if (returnVariables && execution != null) { variablesListener = new ExecutionVariableSnapshotObserver(execution, false, deserializeValues); } // complete or resolve the task if (DelegationState.PENDING.Equals(task.DelegationState)) { task.resolve(); task.createHistoricTaskDetails(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_RESOLVE); } else { task.complete(); task.createHistoricTaskDetails(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_COMPLETE); } if (returnVariables) { if (variablesListener != null) { return(variablesListener.Variables); } else { return(string.ReferenceEquals(task.CaseDefinitionId, null) ? null : task.getVariablesTyped(false)); } } else { return(null); } }
public TaskDefinition(TaskFormHandler taskFormHandler) { this.taskFormHandler = taskFormHandler; }
public DelegateTaskFormHandler(TaskFormHandler formHandler, DeploymentEntity deployment) : base(formHandler, deployment.Id) { }