Skip to content

Package: MitarbeiterFaehigkeit

MitarbeiterFaehigkeit

nameinstructionbranchcomplexitylinemethod
MitarbeiterFaehigkeit(String, String)
M: 0 C: 9
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 4
100%
M: 0 C: 1
100%
create(String, String)
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%
equals(Object)
M: 0 C: 14
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 4
100%
M: 0 C: 1
100%
getBeschreibung()
M: 0 C: 3
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
getName()
M: 0 C: 3
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
hashCode()
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 mensch.faehigkeit;
2:
3: import util.exceptions.FaehigkeitsException;
4:
5: /**
6: * Um bestimmte Tätigkeiten in der Produktion auszuueben, benötigen Mitarbeiter bestimmte MitarbeiterFähikeiten. <br>
7: * Diese sind ueber den Namen eindeutig, was ueber den {@link MitarbeiterFaehigkeitenManager} gesichert wird.
8: */
9: public class MitarbeiterFaehigkeit {
10:         
11:         private final String name;
12:         private final String beschreibung;
13:         
14:         /**
15:          * erstellt eine neue Mitarbeiterfähigkeit.
16:          *
17:          * @param name
18:          * Name der Mitarbeiterfähigkeit.
19:          * @param beschreibung
20:          * Beschreibung der Mitarbeiterfähigkeit.
21:          */
22:         MitarbeiterFaehigkeit(final String name, final String beschreibung) {
23:                 this.name = name;
24:                 this.beschreibung = beschreibung;
25:         }
26:         
27:         /**
28:          * erstellt eine neue Mitarbeiterfähigkeit. <br>
29:          * Dies geschieht über den {@link MitarbeiterFaehigkeitenManager}, um sicherzustellen, dass jede Fähigkeit nur
30:          * einmal existiert.
31:          *
32:          * @param name
33:          * Name der Fähigkeit
34:          * @param beschreibung
35:          * Beschreibung der Fähigkeit
36:          * @return neu erstellte Mitarbeiterfähigkeit
37:          * @throws FaehigkeitsException
38:          * falls die Mitarbeiterfähigkeit dem Namenspattern für Maschinenfähigkeiten entspricht, jedoch keine
39:          * {@linkplain MitarbeiterFaehigkeitFuerMaschine} ist.
40:          */
41:         public static MitarbeiterFaehigkeit create(final String name, final String beschreibung)
42:                         throws FaehigkeitsException {
43:                 return MitarbeiterFaehigkeitenManager.getInstance().createMitarbeiterFaehigkeitFuerMaschine(name, beschreibung);
44:         }
45:         
46:         @Override
47:         public boolean equals(final Object obj) {
48:•                if (obj instanceof MitarbeiterFaehigkeit) {
49:                         final MitarbeiterFaehigkeit mitarbeiterFaehigkeit = (MitarbeiterFaehigkeit) obj;
50:                         return mitarbeiterFaehigkeit.name.equals(this.name);
51:                 }
52:                 return false;
53:         }
54:         
55:         @Override
56:         public int hashCode() {
57:                 return this.name.hashCode();
58:         }
59:         
60:         /**
61:          * @return Name der Mitarbeiterfähigkeit
62:          */
63:         public String getName() {
64:                 return this.name;
65:         }
66:         
67:         /**
68:          * @return Beschreibung der Mitarbeiterfähigkeit.
69:          */
70:         public String getBeschreibung() {
71:                 return this.beschreibung;
72:         }
73: }