本文整理汇总了Java中org.camunda.bpm.engine.impl.pvm.process.ScopeImpl.isScope方法的典型用法代码示例。如果您正苦于以下问题:Java ScopeImpl.isScope方法的具体用法?Java ScopeImpl.isScope怎么用?Java ScopeImpl.isScope使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
的用法示例。
在下文中一共展示了ScopeImpl.isScope方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: validate
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
@Override
public void validate(MigratingActivityInstance migratingInstance, MigratingProcessInstance migratingProcessInstance,
MigratingActivityInstanceValidationReportImpl instanceReport) {
ScopeImpl sourceScope = migratingInstance.getSourceScope();
ScopeImpl targetScope = migratingInstance.getTargetScope();
if (migratingInstance.migrates()) {
boolean becomesNonScope = sourceScope.isScope() && !targetScope.isScope();
if (becomesNonScope) {
Map<String, List<MigratingVariableInstance>> dependentVariablesByName = getMigratingVariableInstancesByName(migratingInstance);
for (String variableName : dependentVariablesByName.keySet()) {
if (dependentVariablesByName.get(variableName).size() > 1) {
instanceReport.addFailure("The variable '" + variableName + "' exists in both, this scope and "
+ "concurrent local in the parent scope. "
+ "Migrating to a non-scope activity would overwrite one of them.");
}
}
}
}
}
示例2: isCompensationThrowing
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
/**
* Returns true if the given execution is in a compensation-throwing activity but there is no dedicated scope execution
* in the given mapping.
*/
public static boolean isCompensationThrowing(PvmExecutionImpl execution, Map<ScopeImpl, PvmExecutionImpl> activityExecutionMapping) {
if (CompensationBehavior.isCompensationThrowing(execution)) {
ScopeImpl compensationThrowingActivity = execution.getActivity();
if (compensationThrowingActivity.isScope()) {
return activityExecutionMapping.get(compensationThrowingActivity) ==
activityExecutionMapping.get(compensationThrowingActivity.getFlowScope());
}
else {
// for transaction sub processes with cancel end events, the compensation throwing execution waits in the boundary event, not in the end
// event; cancel boundary events are currently not scope
return compensationThrowingActivity.getActivityBehavior() instanceof CancelBoundaryEventActivityBehavior;
}
}
else {
return false;
}
}
示例3: attachState
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
@Override
public void attachState(MigratingScopeInstance owningActivityInstance) {
ExecutionEntity representativeExecution = owningActivityInstance.resolveRepresentativeExecution();
ScopeImpl currentScope = owningActivityInstance.getCurrentScope();
ExecutionEntity newOwningExecution = representativeExecution;
if (currentScope.isScope() && isConcurrentLocalInParentScope) {
newOwningExecution = representativeExecution.getParent();
}
newOwningExecution.addVariableInternal(variable);
}
示例4: determineBehavior
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
protected MigratingActivityInstanceBehavior determineBehavior(ScopeImpl scope) {
if (scope.isScope()) {
return new MigratingScopeActivityInstanceBehavior();
}
else {
return new MigratingNonScopeActivityInstanceBehavior();
}
}
示例5: visited
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
public void visited(MigratingScopeInstance scopeInstance) {
ScopeImpl targetScope = scopeInstance.getTargetScope();
if (targetScope.isScope()) {
scopeInstances.put(targetScope, scopeInstance);
}
}
示例6: visit
import org.camunda.bpm.engine.impl.pvm.process.ScopeImpl; //导入方法依赖的package包/类
public void visit(ScopeImpl obj) {
if(obj != null && obj.isScope()) {
scopes.add(obj);
}
}