aboutsummaryrefslogtreecommitdiffstats
path: root/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java
diff options
context:
space:
mode:
Diffstat (limited to 'Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java')
-rw-r--r--Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java
index 840f501d..4034bdf3 100644
--- a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java
+++ b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentInstanceTrace.java
@@ -7,7 +7,9 @@ import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentDefinition;
7import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentFaultTree; 7import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentFaultTree;
8import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.EventDeclaration; 8import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.EventDeclaration;
9import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.InputEvent; 9import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.InputEvent;
10import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Modality;
10import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Output; 11import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Output;
12import hu.bme.mit.inf.dslreasoner.faulttree.model.util.CftExtensions;
11import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentNameGenerator; 13import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentNameGenerator;
12import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.InputTrace; 14import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.InputTrace;
13import java.util.Map; 15import java.util.Map;
@@ -21,9 +23,11 @@ public class ComponentInstanceTrace {
21 23
22 private final Map<EventDeclaration, Output> outputEventsMap; 24 private final Map<EventDeclaration, Output> outputEventsMap;
23 25
24 protected ComponentInstanceTrace(final ComponentFaultTree faultTree, final ComponentDefinition componentDefinition, final ComponentNameGenerator nameGenerator) { 26 protected ComponentInstanceTrace(final ComponentFaultTree faultTree, final ComponentDefinition componentDefinition, final ComponentNameGenerator nameGenerator, final Modality exists, final boolean multipleAllowed) {
25 this.componentInstance.setComponentDefinition(componentDefinition); 27 this.componentInstance.setComponentDefinition(componentDefinition);
26 this.componentInstance.setName(nameGenerator.nextName(componentDefinition)); 28 this.componentInstance.setName(nameGenerator.nextName(componentDefinition));
29 this.componentInstance.setExists(exists);
30 this.componentInstance.setMultipleAllowed(multipleAllowed);
27 this.inputEventsMap = Maps.<InputEvent, InputTrace>newHashMapWithExpectedSize(componentDefinition.getInputEvents().size()); 31 this.inputEventsMap = Maps.<InputEvent, InputTrace>newHashMapWithExpectedSize(componentDefinition.getInputEvents().size());
28 EList<InputEvent> _inputEvents = componentDefinition.getInputEvents(); 32 EList<InputEvent> _inputEvents = componentDefinition.getInputEvents();
29 for (final InputEvent inputEvent : _inputEvents) { 33 for (final InputEvent inputEvent : _inputEvents) {
@@ -48,6 +52,10 @@ public class ComponentInstanceTrace {
48 } 52 }
49 53
50 public void assign(final EventDeclaration inputEvent, final ComponentInstanceTrace sourceComponent, final EventDeclaration outputEvent) { 54 public void assign(final EventDeclaration inputEvent, final ComponentInstanceTrace sourceComponent, final EventDeclaration outputEvent) {
55 this.assign(inputEvent, sourceComponent, outputEvent, Modality.MUST);
56 }
57
58 public void assign(final EventDeclaration inputEvent, final ComponentInstanceTrace sourceComponent, final EventDeclaration outputEvent, final Modality exists) {
51 final InputTrace inputTrace = this.inputEventsMap.get(inputEvent); 59 final InputTrace inputTrace = this.inputEventsMap.get(inputEvent);
52 if ((inputTrace == null)) { 60 if ((inputTrace == null)) {
53 throw new IllegalArgumentException(("Unknown input: " + inputEvent)); 61 throw new IllegalArgumentException(("Unknown input: " + inputEvent));
@@ -56,10 +64,14 @@ public class ComponentInstanceTrace {
56 if ((output == null)) { 64 if ((output == null)) {
57 throw new IllegalArgumentException(("Unknown output: " + outputEvent)); 65 throw new IllegalArgumentException(("Unknown output: " + outputEvent));
58 } 66 }
59 inputTrace.assign(output); 67 inputTrace.assign(output, exists);
60 } 68 }
61 69
62 protected EList<Output> getOutputs() { 70 protected EList<Output> getOutputs() {
63 return this.componentInstance.getOutputs(); 71 return this.componentInstance.getOutputs();
64 } 72 }
73
74 protected boolean appearsExactlyOnce() {
75 return CftExtensions.appearsExactlyOnce(this.componentInstance);
76 }
65} 77}