예제 #1
0
        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));
        }
예제 #2
0
        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);
            }
        }
예제 #3
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: protected void invoke() throws Exception
        protected internal override void invoke()
        {
            invocationResult = taskFormHandler.createTaskForm(task);
        }