Skip to content

Package: SortierParameter

SortierParameter

nameinstructionbranchcomplexitylinemethod
SortierParameter(SortierReihenfolge)
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%
getSortierReihenfolge()
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%
sortiere(List)
M: 0 C: 11
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 4
100%
M: 0 C: 1
100%

Coverage

1: package rollenbelegung.SortierParameter;
2:
3: import java.util.Collections;
4: import java.util.List;
5:
6: /**
7: * SortierParameter mit denen Objekte <T> sortiert werden.
8: *
9: * @param <T>
10: * Typisierung, was mit dem Parameter sortiert wird
11: */
12: public abstract class SortierParameter<T> {
13:         
14:         private final SortierReihenfolge sortierReihenfolge;
15:         
16:         /**
17:          * Erzeugt einen SortierParameter.
18:          *
19:          * @param sortierReihenfolge
20:          * des SortierParameters
21:          */
22:         protected SortierParameter(final SortierReihenfolge sortierReihenfolge) {
23:                 this.sortierReihenfolge = sortierReihenfolge;
24:         }
25:         
26:         /**
27:          * Üblicher Getter für das Attribut sortierReihenfolge.
28:          *
29:          * @return liefert sortierReihenfolge.
30:          */
31:         public SortierReihenfolge getSortierReihenfolge() {
32:                 return this.sortierReihenfolge;
33:         }
34:         
35:         /**
36:          * Sortiert die übergebene {@link List} und dreht sie um, falls die {@link SortierReihenfolge} des SortierParameters ABSTEIGEND ist.
37:          *
38:          * @param list
39:          * Liste, die sortiert wird
40:          */
41:         public void sortiere(final List<T> list) {
42:                 this.specialSort(list);
43:•                if (this.sortierReihenfolge.equals(SortierReihenfolge.ABSTEIGEND)) {
44:                         Collections.reverse(list);
45:                 }
46:         }
47:         
48:         /**
49:          * Sortiert die übergebene {@link List} aufsteigend.
50:          *
51:          * @param list
52:          * Liste, die sortiert wird
53:          */
54:         protected abstract void specialSort(List<T> list);
55:         
56: }