Skip to content

Package: MenschlicherAkteurtyp

MenschlicherAkteurtyp

nameinstructionbranchcomplexitylinemethod
MenschlicherAkteurtyp()
M: 0 C: 8
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
accept(AkteurTypVisitor)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
addBenoetigteRolle(Produktionsrolle)
M: 0 C: 6
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
create()
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
getBenoetigteRollen()
M: 0 C: 4
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.akteurstypen;
2:
3: import ablaeufe.meta.visitor.AkteurTypVisitor;
4: import mensch.Produktionsrolle;
5:
6: import java.util.ArrayList;
7: import java.util.Collection;
8: import java.util.Collections;
9:
10: /**
11: * Ein Menschlicher Akteurtyp hat eine beliebig große Menge an Produktionsrollen. Diese Rollen müssen entweder die
12: * Aktivität betreuen (benoetigteRollen) oder es muss einer der Rollen anwesend sein (benoetigteOderRollen).
13: *
14: */
15: public final class MenschlicherAkteurtyp implements Akteurtyp {
16:         
17:         private final Collection<Produktionsrolle> benoetigteRollen;
18:
19:         private MenschlicherAkteurtyp() {
20:                 this.benoetigteRollen = new ArrayList<>();
21:         }
22:
23: /**
24: * @return ein erstellter {@link MenschlicherAkteurtyp}.
25: */
26:         public static MenschlicherAkteurtyp create() {
27:          return new MenschlicherAkteurtyp();
28: }
29:
30:
31:         /**
32:          * Getter for an read only Collection of benoetigte Rollen.
33:          *
34:          * @return benoetigteRollen
35:          */
36:         public Collection<Produktionsrolle> getBenoetigteRollen() {
37:                 return Collections.unmodifiableCollection(this.benoetigteRollen);
38:         }
39:
40:         /**
41:          * Adder für benoetigteRollen.
42:          *
43:          * @param benoetigteRolle
44:          * hinzuzufügende Rolle.
45:          */
46:         public void addBenoetigteRolle(final Produktionsrolle benoetigteRolle) {
47:                 this.benoetigteRollen.add(benoetigteRolle);
48:         }
49:
50: @Override
51: public <T> T accept(final AkteurTypVisitor<T> visitor) {
52: return visitor.handle(this);
53: }
54: }