diff options
author | Kristóf Marussy <kris7topher@gmail.com> | 2019-03-20 16:09:09 +0100 |
---|---|---|
committer | Kristóf Marussy <kris7topher@gmail.com> | 2019-03-20 16:09:09 +0100 |
commit | 3f5aaab5025b8eb243f414b1c789085327df04f4 (patch) | |
tree | 156d9d95888fce6b003d73f509b9155e6b24555f /Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java | |
parent | Fix ParseUtil to avoid breaking the .vql editor in Eclipse (diff) | |
download | VIATRA-Generator-3f5aaab5025b8eb243f414b1c789085327df04f4.tar.gz VIATRA-Generator-3f5aaab5025b8eb243f414b1c789085327df04f4.tar.zst VIATRA-Generator-3f5aaab5025b8eb243f414b1c789085327df04f4.zip |
Fault tree transformation for partial models WIP
Diffstat (limited to 'Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java')
-rw-r--r-- | Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java index 46e711d9..ddcf9036 100644 --- a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java +++ b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/xtend-gen/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/ComponentFaultTreeTrace.java | |||
@@ -3,6 +3,7 @@ package hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft; | |||
3 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.CftFactory; | 3 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.CftFactory; |
4 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentDefinition; | 4 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentDefinition; |
5 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentFaultTree; | 5 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.ComponentFaultTree; |
6 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Modality; | ||
6 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Output; | 7 | import hu.bme.mit.inf.dslreasoner.faulttree.model.cft.Output; |
7 | import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentInstanceTrace; | 8 | import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentInstanceTrace; |
8 | import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentNameGenerator; | 9 | import hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft.ComponentNameGenerator; |
@@ -24,13 +25,17 @@ public class ComponentFaultTreeTrace { | |||
24 | private final Map<IPatternMatch, ComponentInstanceTrace> componentInstancesMap = CollectionLiterals.<IPatternMatch, ComponentInstanceTrace>newHashMap(); | 25 | private final Map<IPatternMatch, ComponentInstanceTrace> componentInstancesMap = CollectionLiterals.<IPatternMatch, ComponentInstanceTrace>newHashMap(); |
25 | 26 | ||
26 | public ComponentInstanceTrace instantiateComponent(final IPatternMatch patternMatch, final ComponentDefinition componenDefinition) { | 27 | public ComponentInstanceTrace instantiateComponent(final IPatternMatch patternMatch, final ComponentDefinition componenDefinition) { |
28 | return this.instantiateComponent(patternMatch, componenDefinition, Modality.MUST, false); | ||
29 | } | ||
30 | |||
31 | public ComponentInstanceTrace instantiateComponent(final IPatternMatch patternMatch, final ComponentDefinition componenDefinition, final Modality exists, final boolean allowMultiple) { | ||
27 | ComponentInstanceTrace _xblockexpression = null; | 32 | ComponentInstanceTrace _xblockexpression = null; |
28 | { | 33 | { |
29 | boolean _containsKey = this.componentInstancesMap.containsKey(patternMatch); | 34 | boolean _containsKey = this.componentInstancesMap.containsKey(patternMatch); |
30 | if (_containsKey) { | 35 | if (_containsKey) { |
31 | throw new IllegalArgumentException(("Already instantiated component for match: " + patternMatch)); | 36 | throw new IllegalArgumentException(("Already instantiated component for match: " + patternMatch)); |
32 | } | 37 | } |
33 | final ComponentInstanceTrace componentTrace = new ComponentInstanceTrace(this.componentFaultTree, componenDefinition, this.nameGenerator); | 38 | final ComponentInstanceTrace componentTrace = new ComponentInstanceTrace(this.componentFaultTree, componenDefinition, this.nameGenerator, exists, allowMultiple); |
34 | this.componentInstancesMap.put(patternMatch, componentTrace); | 39 | this.componentInstancesMap.put(patternMatch, componentTrace); |
35 | _xblockexpression = componentTrace; | 40 | _xblockexpression = componentTrace; |
36 | } | 41 | } |
@@ -53,6 +58,11 @@ public class ComponentFaultTreeTrace { | |||
53 | " instead"); | 58 | " instead"); |
54 | throw new IllegalArgumentException(_plus_1); | 59 | throw new IllegalArgumentException(_plus_1); |
55 | } | 60 | } |
61 | boolean _appearsExactlyOnce = trace.appearsExactlyOnce(); | ||
62 | boolean _not = (!_appearsExactlyOnce); | ||
63 | if (_not) { | ||
64 | throw new IllegalArgumentException("Top level must appear in the fault tree exactly once"); | ||
65 | } | ||
56 | this.componentFaultTree.setTopEvent(IterableExtensions.<Output>head(outputs)); | 66 | this.componentFaultTree.setTopEvent(IterableExtensions.<Output>head(outputs)); |
57 | } | 67 | } |
58 | 68 | ||