Skip to content

Package: Verteilungstyp

Verteilungstyp

nameinstructionbranchcomplexitylinemethod
Verteilungstyp(VerteilungsStrategie)
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%
ausfuehren(Verteilung)
M: 5 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 2 C: 0
0%
M: 1 C: 0
0%
create(VerteilungsStrategie)
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%

Coverage

1: package ablaeufe.meta.konnektortypen;
2:
3: import ablaeufe.meta.strategies.verteilung.VerteilungsStrategie;
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.Verteilung;
9:
10: /**
11: * Ein Verteilungstyp hat einen Inport und mehrere Outports. Objekte dieser Klasse sind dafür da, mehrere Aktivitäten
12: * gleichzeitig zu starten, wenn eine Aktivität fertig ist.
13: *
14: */
15: public final class Verteilungstyp extends Aufteilungstyp {
16:
17:         private final VerteilungsStrategie strategie;
18:
19: private Verteilungstyp(final VerteilungsStrategie strategie) {
20: this.strategie = strategie;
21: }
22:
23:         /**
24:          *
25:          * @param verteilung Verteilung des Verteilungstyp
26:          * @return Verteilungstyp
27:          */
28: public static Verteilungstyp create(final VerteilungsStrategie verteilung) {
29: return new Verteilungstyp(verteilung);
30:         }
31:
32:         /**
33:          * Führt die Verteilung aus, wenn sie in diesem Verteilungstyp typisiert ist.
34:          *
35:          * @param verteilung
36:          * Verteilung welche ausgeführt werden soll.
37:          */
38:         public void ausfuehren(final Verteilung verteilung) {
39:                 this.strategie.verteile(verteilung);
40:         }
41:
42:         @Override
43:         public void accept(final AufteilungstypVisitor visitor) {
44:                 visitor.handle(this);
45:         }
46:
47:         @Override
48:         public void accept(final AtomarerProzesstypVisitor visitor) {
49:                 visitor.handle(this);
50:         }
51:
52:         @Override
53:         public void accept(final ProzesstypVisitor visitor) {
54:                 visitor.handle(this);
55:
56:         }
57:
58: @Override
59:         public void accept(final KonnektortypVisitor visitor) {
60:                 visitor.handle(this);
61:         }
62:
63: }