public ExecutionContext createSignalContext()

in core/src/main/java/com/alibaba/smart/framework/engine/context/factory/impl/DefaultContextFactory.java [27:56]


    public ExecutionContext createSignalContext(Map<String, Object> request,
                                                ProcessEngineConfiguration processEngineConfiguration,
                                                ExecutionInstance executionInstance,
                                                ActivityInstance activityInstance,
                                                ProcessInstance processInstance,
                                                ProcessDefinition processDefinition) {
        ExecutionContext executionContext = new DefaultExecutionContext();
        executionContext.setProcessEngineConfiguration(processEngineConfiguration);
        executionContext.setProcessDefinition(processDefinition);
        executionContext.setProcessInstance(processInstance);
        executionContext.setExecutionInstance(executionInstance);


        if(null != executionInstance){

            executionContext.setBlockId(executionInstance.getBlockId());


            String processDefinitionActivityId = executionInstance.getProcessDefinitionActivityId();
            Map<String, IdBasedElement> idBasedElementMap = processDefinition.getIdBasedElementMap();
            IdBasedElement idBasedElement = idBasedElementMap.get(
                processDefinitionActivityId);
            executionContext.setBaseElement(idBasedElement);

        }

        executionContext.setActivityInstance(activityInstance);
        executionContext.setRequest(request);
        return executionContext;
    }