Skip to content

Package: Alternativetyp

Alternativetyp

nameinstructionbranchcomplexitylinemethod
Alternativetyp(Bedingung)
M: 0 C: 6
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
accept(AtomarerProzesstypVisitor)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
accept(AufteilungstypVisitor)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
accept(KonnektortypVisitor)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
accept(ProzesstypVisitor)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
create(Bedingung)
M: 0 C: 5
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
pruefeBedingung(EntschiedeneAlternative)
M: 6 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%

Coverage

1: package ablaeufe.meta.konnektortypen;
2:
3: import ablaeufe.meta.strategies.alternative.Bedingung;
4: import ablaeufe.meta.visitor.AtomarerProzesstypVisitor;
5: import ablaeufe.meta.visitor.AufteilungstypVisitor;
6: import ablaeufe.meta.visitor.KonnektortypVisitor;
7: import ablaeufe.meta.visitor.ProzesstypVisitor;
8: import ablaeufe.operation.konnektoren.EntschiedeneAlternative;
9:
10: /**
11: * Ein Alternativetyp verbindet einen Inport mit beliebig vielen Outports. Die zugewiesene Strategie (Bedingung)
12: * entscheidet dabei, welcher Outport im aktuellen zustand genutzt werden soll.
13: *
14: */
15: public final class Alternativetyp extends Aufteilungstyp {
16:
17:         private final Bedingung bedingung;
18:
19:         // 1 Inport
20:         // * Outport
21:
22: private Alternativetyp(final Bedingung bedingung) {
23: this.bedingung = bedingung;
24: }
25:
26: /**
27: * @param bedingung Bedingung des Alternativetypen.
28: * @return Abstraktionstyp
29: */
30: public static Alternativetyp create(final Bedingung bedingung) {
31: return new Alternativetyp(bedingung);
32: }
33:
34: /**
35: * @param alternativetyp Konkreter {@link Alternativetyp}
36:          * Entscheidet welcher Outport genutzt werden soll. Dazu wird die Bedingung (bedingung) geprüft.
37:          */
38:         public void pruefeBedingung(final EntschiedeneAlternative alternativetyp) {
39:          this.bedingung.pruefeBedingung(alternativetyp);
40:          // TODO sinnvoll machen pruefe bedingung gibt prozess oder port zurück
41:         }
42:
43:         @Override
44:         public void accept(final AufteilungstypVisitor visitor) {
45:                 visitor.handle(this);
46:         }
47:
48:         @Override
49:         public void accept(final AtomarerProzesstypVisitor visitor) {
50:                 visitor.handle(this);
51:         }
52:
53:         @Override
54:         public void accept(final ProzesstypVisitor visitor) {
55:                 visitor.handle(this);
56:         }
57:
58: @Override
59:         public void accept(final KonnektortypVisitor visitor) {
60:                 visitor.handle(this);
61:         }
62: }