当前位置: 首页>>代码示例>>Java>>正文


Java MultiInstanceActivityBehavior类代码示例

本文整理汇总了Java中org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior的典型用法代码示例。如果您正苦于以下问题:Java MultiInstanceActivityBehavior类的具体用法?Java MultiInstanceActivityBehavior怎么用?Java MultiInstanceActivityBehavior使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MultiInstanceActivityBehavior类属于org.activiti.engine.impl.bpmn.behavior包,在下文中一共展示了MultiInstanceActivityBehavior类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: executeParse

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
protected void executeParse(BpmnParse bpmnParse, UserTask userTask)
{
    ActivityImpl activity = findActivity(bpmnParse, userTask.getId());
    ActivityBehavior activitybehaviour = activity.getActivityBehavior();
    if (activitybehaviour instanceof UserTaskActivityBehavior)
    {
        addListeners((UserTaskActivityBehavior) activity.getActivityBehavior());
    } 
    else if(activitybehaviour instanceof MultiInstanceActivityBehavior) 
    {
        MultiInstanceActivityBehavior multiInstance = (MultiInstanceActivityBehavior) activitybehaviour;
        if(multiInstance.getInnerActivityBehavior() instanceof UserTaskActivityBehavior) 
        {
            addListeners((UserTaskActivityBehavior) multiInstance.getInnerActivityBehavior());
        }
    }
}
 
开发者ID:Alfresco,项目名称:community-edition-old,代码行数:18,代码来源:AlfrescoUserTaskBpmnParseHandler.java

示例2: getFormKey

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
public String getFormKey(PvmActivity act, ReadOnlyProcessDefinition processDefinition)
{
    if(act instanceof ActivityImpl) 
    {
        ActivityImpl actImpl = (ActivityImpl) act;
        if (actImpl.getActivityBehavior() instanceof UserTaskActivityBehavior)        
        {
        	UserTaskActivityBehavior uta = (UserTaskActivityBehavior) actImpl.getActivityBehavior();
            return getFormKey(uta.getTaskDefinition());
        }
        else if(actImpl.getActivityBehavior() instanceof MultiInstanceActivityBehavior) 
        {
        	// Get the task-definition from the process-definition
        	if(processDefinition instanceof ProcessDefinitionEntity)
        	{
        		// Task definition id is the same the the activity id
        		TaskDefinition taskDef = ((ProcessDefinitionEntity) processDefinition).getTaskDefinitions().get(act.getId());
        		if(taskDef != null)
        		{
        			return getFormKey(taskDef);
        		}
        	}
        }
    }
    return null;
}
 
开发者ID:Alfresco,项目名称:alfresco-repository,代码行数:27,代码来源:ActivitiTypeConverter.java

示例3: getMIAssigneeListName

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
@Override
public String getMIAssigneeListName(ActivityImpl actImpl) {
	if (actImpl == null)
		return null;
	ActivityBehavior activitBehavopr;
	String MIAssigneeListName = null;
	activitBehavopr = actImpl.getActivityBehavior();
	MultiInstanceActivityBehavior paraMulti = (MultiInstanceActivityBehavior) activitBehavopr;
	String expressionText = paraMulti.getCollectionExpression()
			.getExpressionText();
	MIAssigneeListName = StringUtils.substringBeforeLast(
			StringUtils.substringAfterLast(expressionText, "{"), "}");
	return MIAssigneeListName;
	}
 
开发者ID:lz84,项目名称:bachelor,代码行数:15,代码来源:BpmEngineServiceImpl.java

示例4: setMultiInstanceActivityBehavior

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
public void setMultiInstanceActivityBehavior(
        MultiInstanceActivityBehavior multiInstanceActivityBehavior) {
    // TODO Auto-generated method stub
    log.info("MultiInstance usertask  -- {}", multiInstanceActivityBehavior);
    super.setMultiInstanceActivityBehavior(multiInstanceActivityBehavior);
    log.info("jdbcTemplate : {}", jdbcTemplate);
}
 
开发者ID:zhaojunfei,项目名称:lemon,代码行数:8,代码来源:CustomUserTaskActivityBehavior.java

示例5: createMultiInstanceLoopCharacteristics

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
protected void createMultiInstanceLoopCharacteristics(BpmnParse bpmnParse, Activity modelActivity) {

        MultiInstanceLoopCharacteristics loopCharacteristics = modelActivity.getLoopCharacteristics();

        // Activity Behavior
        MultiInstanceActivityBehavior miActivityBehavior = null;
        ActivityImpl activity = bpmnParse.getCurrentScope().findActivity(modelActivity.getId());
        if (activity == null) {
            throw new ActivitiException("Activity " + modelActivity.getId() + " needed for multi instance cannot bv found");
        }

        if (loopCharacteristics.isSequential()) {
            miActivityBehavior = bpmnParse.getActivityBehaviorFactory().createSequentialMultiInstanceBehavior(
                    activity, (AbstractBpmnActivityBehavior) activity.getActivityBehavior());
        } else {
            miActivityBehavior = bpmnParse.getActivityBehaviorFactory().createParallelMultiInstanceBehavior(
                    activity, (AbstractBpmnActivityBehavior) activity.getActivityBehavior());
        }

        // ActivityImpl settings
        activity.setScope(true);
        activity.setProperty("multiInstance", loopCharacteristics.isSequential() ? "sequential" : "parallel");
        activity.setActivityBehavior(miActivityBehavior);

        ExpressionManager expressionManager = bpmnParse.getExpressionManager();

        // loop cardinality
        if (StringUtils.isNotEmpty(loopCharacteristics.getLoopCardinality())) {
            miActivityBehavior.setLoopCardinalityExpression(expressionManager.createExpression(loopCharacteristics.getLoopCardinality()));
        }

        // completion condition
        if (StringUtils.isNotEmpty(loopCharacteristics.getCompletionCondition())) {
            miActivityBehavior.setCompletionConditionExpression(expressionManager.createExpression(loopCharacteristics.getCompletionCondition()));
        }

        // activiti:collection
        if (StringUtils.isNotEmpty(loopCharacteristics.getInputDataItem())) {
            if (loopCharacteristics.getInputDataItem().contains("{")) {
                miActivityBehavior.setCollectionExpression(expressionManager.createExpression(loopCharacteristics.getInputDataItem()));
            } else {
                miActivityBehavior.setCollectionVariable(loopCharacteristics.getInputDataItem());
            }
        }

        // activiti:elementVariable
        if (StringUtils.isNotEmpty(loopCharacteristics.getElementVariable())) {
            miActivityBehavior.setCollectionElementVariable(loopCharacteristics.getElementVariable());
        }

        // activiti:elementIndexVariable
        if (StringUtils.isNotEmpty(loopCharacteristics.getElementIndexVariable())) {
            miActivityBehavior.setCollectionElementIndexVariable(loopCharacteristics.getElementIndexVariable());
        }

    }
 
开发者ID:flowable,项目名称:flowable-engine,代码行数:57,代码来源:AbstractActivityBpmnParseHandler.java

示例6: createMultiInstanceLoopCharacteristics

import org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior; //导入依赖的package包/类
protected void createMultiInstanceLoopCharacteristics(BpmnParse bpmnParse, org.activiti.bpmn.model.Activity modelActivity) {
  
  MultiInstanceLoopCharacteristics loopCharacteristics = modelActivity.getLoopCharacteristics();
  
  // Activity Behavior
  MultiInstanceActivityBehavior miActivityBehavior = null;
  ActivityImpl activity = bpmnParse.getCurrentScope().findActivity(modelActivity.getId());
  if (activity == null) {
    bpmnParse.getBpmnModel().addProblem("Activity " + modelActivity.getId() + " needed for multi instance cannot bv found", modelActivity);
  }
          
  if (loopCharacteristics.isSequential()) {
    miActivityBehavior = bpmnParse.getActivityBehaviorFactory().createSequentialMultiInstanceBehavior(
            activity, (AbstractBpmnActivityBehavior) activity.getActivityBehavior()); 
  } else {
    miActivityBehavior = bpmnParse.getActivityBehaviorFactory().createParallelMultiInstanceBehavior(
            activity, (AbstractBpmnActivityBehavior) activity.getActivityBehavior());
  }
  
  // ActivityImpl settings
  activity.setScope(true);
  activity.setProperty("multiInstance", loopCharacteristics.isSequential() ? "sequential" : "parallel");
  activity.setActivityBehavior(miActivityBehavior);
  
  ExpressionManager expressionManager = bpmnParse.getExpressionManager();
  BpmnModel bpmnModel = bpmnParse.getBpmnModel();
  
  // loopcardinality
  if (StringUtils.isNotEmpty(loopCharacteristics.getLoopCardinality())) {
    miActivityBehavior.setLoopCardinalityExpression(expressionManager.createExpression(loopCharacteristics.getLoopCardinality()));
  }
  
  // completion condition
  if (StringUtils.isNotEmpty(loopCharacteristics.getCompletionCondition())) {
    miActivityBehavior.setCompletionConditionExpression(expressionManager.createExpression(loopCharacteristics.getCompletionCondition()));
  }
  
  // activiti:collection
  if (StringUtils.isNotEmpty(loopCharacteristics.getInputDataItem())) {
    if (loopCharacteristics.getInputDataItem().contains("{")) {
      miActivityBehavior.setCollectionExpression(expressionManager.createExpression(loopCharacteristics.getInputDataItem()));
    } else {
      miActivityBehavior.setCollectionVariable(loopCharacteristics.getInputDataItem());
    }
  }

  // activiti:elementVariable
  if (StringUtils.isNotEmpty(loopCharacteristics.getElementVariable())) {
    miActivityBehavior.setCollectionElementVariable(loopCharacteristics.getElementVariable());
  }

  // Validation
  if (miActivityBehavior.getLoopCardinalityExpression() == null && miActivityBehavior.getCollectionExpression() == null
          && miActivityBehavior.getCollectionVariable() == null) {
    bpmnModel.addProblem("Either loopCardinality or loopDataInputRef/activiti:collection must been set.", loopCharacteristics);
  }

  // Validation
  if (miActivityBehavior.getCollectionExpression() == null && miActivityBehavior.getCollectionVariable() == null
          && miActivityBehavior.getCollectionElementVariable() != null) {
    bpmnModel.addProblem("LoopDataInputRef/activiti:collection must be set when using inputDataItem or activiti:elementVariable.", loopCharacteristics);
  }

}
 
开发者ID:springvelocity,项目名称:xbpm5,代码行数:65,代码来源:AbstractActivityBpmnParseHandler.java


注:本文中的org.activiti.engine.impl.bpmn.behavior.MultiInstanceActivityBehavior类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。