|
@@ -7,6 +7,7 @@ import org.activiti.engine.impl.persistence.entity.ProcessDefinitionEntity;
|
|
import org.activiti.engine.impl.pvm.PvmActivity;
|
|
import org.activiti.engine.impl.pvm.PvmActivity;
|
|
import org.activiti.engine.impl.pvm.PvmTransition;
|
|
import org.activiti.engine.impl.pvm.PvmTransition;
|
|
import org.activiti.engine.impl.pvm.process.ActivityImpl;
|
|
import org.activiti.engine.impl.pvm.process.ActivityImpl;
|
|
|
|
+import org.activiti.engine.impl.pvm.process.ProcessElementImpl;
|
|
import org.activiti.engine.impl.task.TaskDefinition;
|
|
import org.activiti.engine.impl.task.TaskDefinition;
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
import org.activiti.engine.repository.ProcessDefinition;
|
|
import org.activiti.engine.runtime.ProcessInstance;
|
|
import org.activiti.engine.runtime.ProcessInstance;
|
|
@@ -15,6 +16,8 @@ import org.hswebframework.web.workflow.flowable.utils.FlowableAbstract;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
|
+import java.util.function.Predicate;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @Author wangwei
|
|
* @Author wangwei
|
|
@@ -26,119 +29,139 @@ public class BpmActivityServiceImp extends FlowableAbstract implements BpmActivi
|
|
/**
|
|
/**
|
|
* 获取指定节点
|
|
* 获取指定节点
|
|
*
|
|
*
|
|
- * @param procDefId 流程定义ID
|
|
|
|
|
|
+ * @param procDefId 流程定义ID
|
|
* @return ActivityImpl 指定的节点资源
|
|
* @return ActivityImpl 指定的节点资源
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public ActivityImpl getActivityById(String procDefId, String activityId){
|
|
|
|
|
|
+ public ActivityImpl getActivityById(String procDefId, String activityId) {
|
|
return getProcessDefinition(procDefId).findActivity(activityId);
|
|
return getProcessDefinition(procDefId).findActivity(activityId);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public List<ActivityImpl> getActivityByKey(String procDefKey, String activityId) {
|
|
|
|
- ProcessDefinition definition = repositoryService.createProcessDefinitionQuery().processDefinitionKey(procDefKey).orderByProcessDefinitionVersion().desc().list().get(0);
|
|
|
|
- String procDefId = definition.getId();
|
|
|
|
- if (activityId == null) {
|
|
|
|
- return getProcessDefinition(procDefId).getActivities();
|
|
|
|
- }else {
|
|
|
|
- List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
- activities.add(getProcessDefinition(procDefId).findActivity(activityId));
|
|
|
|
- return activities;
|
|
|
|
- }
|
|
|
|
|
|
+ public List<ActivityImpl> getActivitiesByKey(String procDefKey, String activityId) {
|
|
|
|
+ ProcessDefinition definition = repositoryService.createProcessDefinitionQuery()
|
|
|
|
+ .processDefinitionKey(procDefKey)
|
|
|
|
+ .orderByProcessDefinitionVersion()
|
|
|
|
+ .desc()
|
|
|
|
+ .singleResult();
|
|
|
|
+// .list()
|
|
|
|
+// .get(0);
|
|
|
|
+
|
|
|
|
+ return getActivitiesById(definition.getId(), activityId);
|
|
|
|
+// String procDefId = definition.getId();
|
|
|
|
+// if (activityId == null) {
|
|
|
|
+// return getProcessDefinition(procDefId).getActivities();
|
|
|
|
+// } else {
|
|
|
|
+// List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
+// activities.add(getProcessDefinition(procDefId).findActivity(activityId));
|
|
|
|
+// return activities;
|
|
|
|
+// }
|
|
}
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
|
- public List<ActivityImpl> getActivitysById(String processDefId, String activityId){
|
|
|
|
|
|
+ public List<ActivityImpl> getActivitiesById(String processDefId, String activityId) {
|
|
ProcessDefinitionEntity pde = getProcessDefinition(processDefId);
|
|
ProcessDefinitionEntity pde = getProcessDefinition(processDefId);
|
|
if (activityId == null) {
|
|
if (activityId == null) {
|
|
return pde.getActivities();
|
|
return pde.getActivities();
|
|
- }else {
|
|
|
|
- List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
- activities.add(pde.findActivity(activityId));
|
|
|
|
- return activities;
|
|
|
|
|
|
+ } else {
|
|
|
|
+ ActivityImpl activity = pde.findActivity(activityId);
|
|
|
|
+ if (null == activity) return Collections.emptyList();
|
|
|
|
+
|
|
|
|
+// List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
+// activities.add(activity);
|
|
|
|
+ return Collections.singletonList(activity);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取所有userTask
|
|
* 获取所有userTask
|
|
*
|
|
*
|
|
- * @param procDefId 流程定义ID
|
|
|
|
|
|
+ * @param procDefId 流程定义ID
|
|
* @return List<ActivityImpl> 当前流程的所有userTask资源
|
|
* @return List<ActivityImpl> 当前流程的所有userTask资源
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public List<ActivityImpl> getUserTasksByProcDefId(String procDefId){
|
|
|
|
- ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
|
|
- List<ActivityImpl> activityList = new ArrayList<>();
|
|
|
|
- for(ActivityImpl activity : pde.getActivities()){
|
|
|
|
- if(activity.getProperty("type").equals("userTask"))
|
|
|
|
- activityList.add(activity);
|
|
|
|
- }
|
|
|
|
- return activityList;
|
|
|
|
|
|
+ public List<ActivityImpl> getUserTasksByProcDefId(String procDefId) {
|
|
|
|
+
|
|
|
|
+ return findActivities(procDefId, activity -> "userTask".equals(activity.getProperty("type")));
|
|
|
|
+
|
|
|
|
+// ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
|
|
+// List<ActivityImpl> activityList = new ArrayList<>();
|
|
|
|
+// for (ActivityImpl activity : pde.getActivities()) {
|
|
|
|
+// if (activity.getProperty("type").equals("userTask"))
|
|
|
|
+// activityList.add(activity);
|
|
|
|
+// }
|
|
|
|
+// return activityList;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<ActivityImpl> getUserTasksByProcDefKey(String procDefKey) {
|
|
public List<ActivityImpl> getUserTasksByProcDefKey(String procDefKey) {
|
|
ProcessDefinition definition = repositoryService.createProcessDefinitionQuery().processDefinitionKey(procDefKey).orderByProcessDefinitionVersion().desc().list().get(0);
|
|
ProcessDefinition definition = repositoryService.createProcessDefinitionQuery().processDefinitionKey(procDefKey).orderByProcessDefinitionVersion().desc().list().get(0);
|
|
String procDefId = definition.getId();
|
|
String procDefId = definition.getId();
|
|
- ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
|
|
- List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
- for(ActivityImpl activity : pde.getActivities()){
|
|
|
|
- if(activity.getProperty("type").equals("userTask"))
|
|
|
|
- activities.add(activity);
|
|
|
|
- }
|
|
|
|
- Collections.sort(activities, new Comparator<ActivityImpl>() {
|
|
|
|
- @Override
|
|
|
|
- public int compare(ActivityImpl o1, ActivityImpl o2) {
|
|
|
|
- return o1.getId().compareTo(o2.getId());
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
|
|
+ List<ActivityImpl> activities = findActivities(procDefId, activity -> "userTask".equals(activity.getProperty("type")));
|
|
|
|
+//
|
|
|
|
+// ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
|
|
+// List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
+// for (ActivityImpl activity : pde.getActivities()) {
|
|
|
|
+// if (activity.getProperty("type").equals("userTask"))
|
|
|
|
+// activities.add(activity);
|
|
|
|
+// }
|
|
|
|
+ if (null != activities)
|
|
|
|
+ activities.sort(Comparator.comparing(ProcessElementImpl::getId));
|
|
return activities;
|
|
return activities;
|
|
}
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
|
- public List<TaskDefinition> getNextActivitys(String procDefId, String activityId) {
|
|
|
|
|
|
+ public List<TaskDefinition> getNextActivities(String procDefId, String activityId) {
|
|
ActivityImpl activity;
|
|
ActivityImpl activity;
|
|
- if(activityId!=null)
|
|
|
|
|
|
+ if (activityId != null)
|
|
activity = getActivityById(procDefId, activityId);
|
|
activity = getActivityById(procDefId, activityId);
|
|
else
|
|
else
|
|
activity = getStartEvent(procDefId);
|
|
activity = getStartEvent(procDefId);
|
|
|
|
+
|
|
List<PvmTransition> pvmTransitions = activity.getOutgoingTransitions();
|
|
List<PvmTransition> pvmTransitions = activity.getOutgoingTransitions();
|
|
- List<TaskDefinition> taskDefinitions = new ArrayList<>();
|
|
|
|
- for(PvmTransition pvmTransition : pvmTransitions){
|
|
|
|
- PvmActivity pvmActivity = pvmTransition.getDestination();
|
|
|
|
- taskDefinitions.addAll(getTaskDefinition((ActivityImpl)pvmActivity,""));
|
|
|
|
- }
|
|
|
|
- return taskDefinitions;
|
|
|
|
|
|
+
|
|
|
|
+ return pvmTransitions.stream()
|
|
|
|
+ .map(PvmTransition::getDestination)
|
|
|
|
+ .map(ActivityImpl.class::cast) //强转为ActivityImpl
|
|
|
|
+ .filter(Objects::nonNull)
|
|
|
|
+ .map(act -> getTaskDefinition(act, "")) //获取TaskDefinition集合
|
|
|
|
+ .flatMap(Collection::stream) //合并集合
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+// List<TaskDefinition> taskDefinitions = new ArrayList<>();
|
|
|
|
+// for (PvmTransition pvmTransition : pvmTransitions) {
|
|
|
|
+// PvmActivity pvmActivity = pvmTransition.getDestination();
|
|
|
|
+// taskDefinitions.addAll(getTaskDefinition((ActivityImpl) pvmActivity, ""));
|
|
|
|
+// }
|
|
|
|
+// return taskDefinitions;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<TaskDefinition> getTaskDefinition(ActivityImpl activityImpl, String elString) {
|
|
public List<TaskDefinition> getTaskDefinition(ActivityImpl activityImpl, String elString) {
|
|
List<TaskDefinition> taskDefinitionList = new ArrayList<>();
|
|
List<TaskDefinition> taskDefinitionList = new ArrayList<>();
|
|
List<TaskDefinition> nextTaskDefinition;
|
|
List<TaskDefinition> nextTaskDefinition;
|
|
- if("userTask".equals(activityImpl.getProperty("type"))){
|
|
|
|
- TaskDefinition taskDefinition = ((UserTaskActivityBehavior)activityImpl.getActivityBehavior()).getTaskDefinition();
|
|
|
|
|
|
+ if ("userTask".equals(activityImpl.getProperty("type"))) {
|
|
|
|
+ TaskDefinition taskDefinition = ((UserTaskActivityBehavior) activityImpl.getActivityBehavior()).getTaskDefinition();
|
|
taskDefinitionList.add(taskDefinition);
|
|
taskDefinitionList.add(taskDefinition);
|
|
- }else{
|
|
|
|
|
|
+ } else {
|
|
List<PvmTransition> pvmTransitions = activityImpl.getOutgoingTransitions();
|
|
List<PvmTransition> pvmTransitions = activityImpl.getOutgoingTransitions();
|
|
List<PvmTransition> outTransitionsTemp;
|
|
List<PvmTransition> outTransitionsTemp;
|
|
- for(PvmTransition tr:pvmTransitions){
|
|
|
|
|
|
+ for (PvmTransition tr : pvmTransitions) {
|
|
PvmActivity pvmActivity = tr.getDestination(); //获取线路的终点节点
|
|
PvmActivity pvmActivity = tr.getDestination(); //获取线路的终点节点
|
|
- if("exclusiveGateway".equals(pvmActivity.getProperty("type"))||"parallelGateway".equals(pvmActivity.getProperty("type"))){
|
|
|
|
|
|
+ if ("exclusiveGateway".equals(pvmActivity.getProperty("type")) || "parallelGateway".equals(pvmActivity.getProperty("type"))) {
|
|
outTransitionsTemp = pvmActivity.getOutgoingTransitions();
|
|
outTransitionsTemp = pvmActivity.getOutgoingTransitions();
|
|
- if(outTransitionsTemp.size() == 1){
|
|
|
|
- nextTaskDefinition =getTaskDefinition((ActivityImpl)outTransitionsTemp.get(0).getDestination(), elString);
|
|
|
|
|
|
+ if (outTransitionsTemp.size() == 1) {
|
|
|
|
+ nextTaskDefinition = getTaskDefinition((ActivityImpl) outTransitionsTemp.get(0).getDestination(), elString);
|
|
taskDefinitionList.addAll(nextTaskDefinition);
|
|
taskDefinitionList.addAll(nextTaskDefinition);
|
|
- }else if(outTransitionsTemp.size() > 1){
|
|
|
|
- for(PvmTransition tr1 : outTransitionsTemp){
|
|
|
|
|
|
+ } else if (outTransitionsTemp.size() > 1) {
|
|
|
|
+ for (PvmTransition tr1 : outTransitionsTemp) {
|
|
Object s = tr1.getProperty("conditionText");
|
|
Object s = tr1.getProperty("conditionText");
|
|
- if(elString.equals(s.toString().trim())){
|
|
|
|
- nextTaskDefinition = getTaskDefinition((ActivityImpl)tr1.getDestination(), elString);
|
|
|
|
|
|
+ if (elString.equals(s.toString().trim())) {
|
|
|
|
+ nextTaskDefinition = getTaskDefinition((ActivityImpl) tr1.getDestination(), elString);
|
|
taskDefinitionList.addAll(nextTaskDefinition);
|
|
taskDefinitionList.addAll(nextTaskDefinition);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- }else if("userTask".equals(pvmActivity.getProperty("type"))){
|
|
|
|
- taskDefinitionList.add(((UserTaskActivityBehavior)((ActivityImpl)pvmActivity).getActivityBehavior()).getTaskDefinition());
|
|
|
|
|
|
+ } else if ("userTask".equals(pvmActivity.getProperty("type"))) {
|
|
|
|
+ taskDefinitionList.add(((UserTaskActivityBehavior) ((ActivityImpl) pvmActivity).getActivityBehavior()).getTaskDefinition());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -147,61 +170,86 @@ public class BpmActivityServiceImp extends FlowableAbstract implements BpmActivi
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Map<String, List<String>> getNextClaim(String procDefId, String activityId) {
|
|
public Map<String, List<String>> getNextClaim(String procDefId, String activityId) {
|
|
- List<TaskDefinition> taskDefinitions = getNextActivitys(procDefId, activityId);
|
|
|
|
|
|
+ List<TaskDefinition> taskDefinitions = getNextActivities(procDefId, activityId);
|
|
Map<String, List<String>> map = new HashMap<>();
|
|
Map<String, List<String>> map = new HashMap<>();
|
|
- for(TaskDefinition taskDefinition : taskDefinitions){
|
|
|
|
|
|
+ for (TaskDefinition taskDefinition : taskDefinitions) {
|
|
List<String> list = new ArrayList<>();
|
|
List<String> list = new ArrayList<>();
|
|
- if(taskDefinition!=null && taskDefinition.getAssigneeExpression()!=null)
|
|
|
|
|
|
+ if (taskDefinition.getAssigneeExpression() != null)
|
|
list.add(taskDefinition.getAssigneeExpression().getExpressionText());
|
|
list.add(taskDefinition.getAssigneeExpression().getExpressionText());
|
|
- else if(taskDefinition!=null && taskDefinition.getCandidateUserIdExpressions()!=null){
|
|
|
|
- for(Expression expression : taskDefinition.getCandidateUserIdExpressions()){
|
|
|
|
|
|
+ else if (taskDefinition.getCandidateUserIdExpressions() != null) {
|
|
|
|
+ for (Expression expression : taskDefinition.getCandidateUserIdExpressions()) {
|
|
list.add(expression.getExpressionText());
|
|
list.add(expression.getExpressionText());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(taskDefinition.getNameExpression()!=null)
|
|
|
|
- map.put(taskDefinition.getNameExpression().getExpressionText(),list);
|
|
|
|
|
|
+ if (taskDefinition.getNameExpression() != null)
|
|
|
|
+ map.put(taskDefinition.getNameExpression().getExpressionText(), list);
|
|
else
|
|
else
|
|
- map.put(taskDefinition.getKey(),list);
|
|
|
|
|
|
+ map.put(taskDefinition.getKey(), list);
|
|
}
|
|
}
|
|
return map;
|
|
return map;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ActivityImpl getStartEvent(String procDefId) {
|
|
public ActivityImpl getStartEvent(String procDefId) {
|
|
- List<ActivityImpl> activities = getActivitysById(procDefId,null);
|
|
|
|
- ActivityImpl activity = null;
|
|
|
|
- for (ActivityImpl a: activities) {
|
|
|
|
- if(a.getProperty("type").equals("startEvent")){
|
|
|
|
- activity = a;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- return activity;
|
|
|
|
|
|
+ return findActivity(procDefId, activity -> "startEvent".equals(activity.getProperty("type")));
|
|
|
|
+
|
|
|
|
+// List<ActivityImpl> activities = getActivitiesById(procDefId, null);
|
|
|
|
+// ActivityImpl activity = null;
|
|
|
|
+// for (ActivityImpl a : activities) {
|
|
|
|
+// if (a.getProperty("type").equals("startEvent")) {
|
|
|
|
+// activity = a;
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// return activity;
|
|
}
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
|
- public ActivityImpl getEndEvent(String procDefId){
|
|
|
|
|
|
+ private List<ActivityImpl> findActivities(String procDefId, Predicate<ActivityImpl> predicate) {
|
|
ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
- for(ActivityImpl activity : pde.getActivities()){
|
|
|
|
- if(activity.getProperty("type").equals("endEvent"))
|
|
|
|
- return activity;
|
|
|
|
- }
|
|
|
|
- return null;
|
|
|
|
|
|
+ if (pde == null) return null;
|
|
|
|
+ return pde.getActivities()
|
|
|
|
+ .stream()
|
|
|
|
+ .filter(predicate)
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private ActivityImpl findActivity(String procDefId, Predicate<ActivityImpl> predicate) {
|
|
|
|
+ ProcessDefinitionEntity pde = getProcessDefinition(procDefId);
|
|
|
|
+ if (pde == null) return null;
|
|
|
|
+ return pde.getActivities()
|
|
|
|
+ .stream()
|
|
|
|
+ .filter(predicate)
|
|
|
|
+ .findFirst()
|
|
|
|
+ .orElse(null);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public ActivityImpl getEndEvent(String procDefId) {
|
|
|
|
+ return findActivity(procDefId, activity -> "endEvent".equals(activity.getProperty("type")));
|
|
|
|
+
|
|
|
|
+// for (ActivityImpl activity : pde.getActivities()) {
|
|
|
|
+// if (activity.getProperty("type").equals("endEvent"))
|
|
|
|
+// return activity;
|
|
|
|
+// }
|
|
|
|
+// return null;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
* 获取流程定义
|
|
* 获取流程定义
|
|
*
|
|
*
|
|
- * @param procDefId 流程定义ID
|
|
|
|
|
|
+ * @param procDefId 流程定义ID
|
|
* @return 流程定义资源
|
|
* @return 流程定义资源
|
|
*/
|
|
*/
|
|
- public ProcessDefinitionEntity getProcessDefinition(String procDefId){
|
|
|
|
|
|
+ public ProcessDefinitionEntity getProcessDefinition(String procDefId) {
|
|
return (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(procDefId);
|
|
return (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(procDefId);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ActivityImpl getActivityByProcInstId(String procDefId, String procInstId) {
|
|
public ActivityImpl getActivityByProcInstId(String procDefId, String procInstId) {
|
|
- ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(procInstId)
|
|
|
|
- .active().singleResult();
|
|
|
|
|
|
+ ProcessInstance processInstance = runtimeService
|
|
|
|
+ .createProcessInstanceQuery()
|
|
|
|
+ .processInstanceId(procInstId)
|
|
|
|
+ .active()
|
|
|
|
+ .singleResult();
|
|
String activityId = processInstance.getActivityId();
|
|
String activityId = processInstance.getActivityId();
|
|
|
|
|
|
return getProcessDefinition(procDefId).findActivity(activityId);
|
|
return getProcessDefinition(procDefId).findActivity(activityId);
|
|
@@ -209,11 +257,18 @@ public class BpmActivityServiceImp extends FlowableAbstract implements BpmActivi
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public List<ActivityImpl> getNextEvent(ActivityImpl activity) {
|
|
public List<ActivityImpl> getNextEvent(ActivityImpl activity) {
|
|
- List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
- List<PvmTransition> pvmTransitions = activity.getOutgoingTransitions();
|
|
|
|
- for(PvmTransition pvmTransition : pvmTransitions){
|
|
|
|
- activities.add((ActivityImpl)pvmTransition.getDestination());
|
|
|
|
- }
|
|
|
|
- return activities;
|
|
|
|
|
|
+
|
|
|
|
+ return activity.getOutgoingTransitions()
|
|
|
|
+ .stream()
|
|
|
|
+ .map(PvmTransition::getDestination)
|
|
|
|
+ .map(ActivityImpl.class::cast)
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+// List<ActivityImpl> activities = new ArrayList<>();
|
|
|
|
+// List<PvmTransition> pvmTransitions = activity.getOutgoingTransitions();
|
|
|
|
+// for (PvmTransition pvmTransition : pvmTransitions) {
|
|
|
|
+// activities.add((ActivityImpl) pvmTransition.getDestination());
|
|
|
|
+// }
|
|
|
|
+// return activities;
|
|
}
|
|
}
|
|
}
|
|
}
|