Skip to content

Package: Kunde

Kunde

nameinstructionbranchcomplexitylinemethod
Kunde(String, Adresse)
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%
accept(DokumentenklassenVariablenVisitor)
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%
create(String)
M: 0 C: 6
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
equals(Object)
M: 4 C: 25
86%
M: 3 C: 5
63%
M: 3 C: 2
40%
M: 2 C: 5
71%
M: 0 C: 1
100%
getAdresse()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
getIdentifier()
M: 3 C: 0
0%
M: 0 C: 0
100%
M: 1 C: 0
0%
M: 1 C: 0
0%
M: 1 C: 0
0%
hashCode()
M: 0 C: 14
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%

Coverage

1: package auftraege.versand;
2:
3: import auftraege.auftragsBildungsParameter.abstraction.DokumentenklassenVariable;
4: import auftraege.auftragsBildungsParameter.abstraction.DokumentenklassenVariablenVisitor;
5: import com.google.common.base.Objects;
6:
7: /**
8: * Ein Kunde besitzt folgende Attribute: Adresse und Identifier(String) damit man ihn in einem Produktionsauftrag eindeutig identifizieren kann.
9: */
10: public final class Kunde implements DokumentenklassenVariable {
11:         private final Adresse adresse;
12:         private final String identifier;
13:
14:
15:         private Kunde(final String identifier, final Adresse adresse) {
16:                 this.identifier = identifier;
17: this.adresse = adresse;
18: }
19:
20:         /**
21:          * Üblicher Getter für das Attribut adresse.
22:          *
23:          * @return liefert adresse.
24:          */
25:         public Adresse getAdresse() {
26:                 return this.adresse;
27:         }
28:
29:         /**
30:          * Getter für den Namen des Kunden.
31:          *
32:          * @return liefert NFamen des Kunden.
33:          */
34:         public String getIdentifier() {
35:                 return this.identifier;
36:         }
37:
38:         /**
39:          * TODO Art: Feature request; hier ist nur ein dummy-Konstruktor, das sollte auch nochmal behandelt werden.
40:          * <p>
41:          * vielleicht erstellt einen Kunden, welcher über den identifier eindeutig identifiziert werden kann
42:          *
43:          * @param identifier eindeutiger identifier
44: * @return das erstellte Kundenobjekt.
45:          */
46:         public static Kunde create(final String identifier) {
47:                 //TODO Art: Feature request; eigentlich müsste hier durch eine Liste von Kunden iteriert werdnen und dieser herausgefiltert werden.
48:                 return new Kunde(identifier, null);
49:         }
50:
51:         @Override
52:         public <T> T accept(final DokumentenklassenVariablenVisitor<T> v) {
53:                 return v.handle(this);
54:         }
55:
56: @Override
57: public boolean equals(final Object o) {
58:• if (this == o) {
59: return true;
60: }
61:• if (!(o instanceof Kunde)) {
62: return false;
63: }
64: final Kunde kunde = (Kunde) o;
65:• return Objects.equal(this.adresse, kunde.adresse)
66:• && Objects.equal(this.identifier, kunde.identifier);
67: }
68:
69: @Override
70: public int hashCode() {
71: return Objects.hashCode(this.adresse, this.identifier);
72: }
73: }