diff --git a/AlgebraicDataflowArchitectureModel/src/algorithms/DataStorageDecision.java b/AlgebraicDataflowArchitectureModel/src/algorithms/DataStorageDecision.java index 2664179..028996b 100644 --- a/AlgebraicDataflowArchitectureModel/src/algorithms/DataStorageDecision.java +++ b/AlgebraicDataflowArchitectureModel/src/algorithms/DataStorageDecision.java @@ -46,6 +46,17 @@ break; } } + for (Edge e : resource.getOutEdges()) { + for (ChannelMember cm : ((ResourceDependency) e).getChannelGenerator().getChannelMembers()) { + if (cm.getStateTransition().getNextStateExpression().getClass() == Term.class) { + if (((Term) cm.getStateTransition().getNextStateExpression()).getSymbol().getName() + .equals("cons")) { + resource.getIdentifierTemplate().setResourceStateType(DataConstraintModel.typeList); + } + } + break; + } + } if (resource.getIdentifierTemplate().getResourceStateType() == null) resource.getIdentifierTemplate().setResourceStateType(DataConstraintModel.typeInt); }