Skip to content

Package: FindeOptimaleParameterAusKommando

FindeOptimaleParameterAusKommando

nameinstructionbranchcomplexitylinemethod
FindeOptimaleParameterAusKommando(LocalDateTime, Collection, Set, List, List, MaschinenRollenbelegungServiceParameter, Collection)
M: 0 C: 24
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 9
100%
M: 0 C: 1
100%
accept(KommandoVisitor)
M: 0 C: 1
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
create(LocalDateTime, Collection, List, List, Collection, Set, MaschinenRollenbelegungServiceParameter)
M: 0 C: 11
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
doIt()
M: 0 C: 19
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%

Coverage

1: package servicekommandos.tagesplanung;
2:
3: import auftraege.Dokumentenklasse;
4: import auftraege.auftragsBildungsParameter.abstraction.ProduktionsauftragsParameter;
5: import maschine.Maschine;
6: import material.MaterialMitMessung;
7: import mensch.Mitarbeiter;
8: import rollenbelegung.SortierParameter.MaschinenRollenbelegungServiceParameter;
9: import schnittstelle.kommandoArchitektur.KommandoOhneExceptionMitResultat;
10: import schnittstelle.kommandoArchitektur.KommandoVisitor;
11: import tagesplanung.TagesplanungsServiceImpl;
12: import util.Pair;
13: import util.exceptions.PPSException;
14:
15: import java.time.LocalDateTime;
16: import java.util.Collection;
17: import java.util.List;
18: import java.util.Set;
19:
20: /**
21: * Klasse, welche ein Kommando darstellt, welches die Operation findeOptimaleParameterAus aus {@link tagesplanung.TagesplanungsService} kapselt.
22: */
23: public final class FindeOptimaleParameterAusKommando extends
24: KommandoOhneExceptionMitResultat<Pair<Set<ProduktionsauftragsParameter>, MaschinenRollenbelegungServiceParameter>> {
25:
26: private final LocalDateTime startzeit;
27: private final Collection<Dokumentenklasse> dokumentenklassen;
28: private final Set<ProduktionsauftragsParameter> produktionsauftragsParameter;
29: private final List<Maschine> maschinen;
30: private final List<Mitarbeiter> mitarbeiter;
31: private final MaschinenRollenbelegungServiceParameter maschinenRollenbelegungServiceParameter;
32: private final Collection<MaterialMitMessung<?>> verfuegbaresMaterial;
33:
34: private FindeOptimaleParameterAusKommando(final LocalDateTime startzeit,
35: final Collection<Dokumentenklasse> dokumentenklassen,
36: final Set<ProduktionsauftragsParameter> produktionsauftragsParameter,
37: final List<Maschine> maschinen,
38: final List<Mitarbeiter> mitarbeiter,
39: final MaschinenRollenbelegungServiceParameter maschinenRollenbelegungServiceParameter,
40: final Collection<MaterialMitMessung<?>> verfuegbaresMaterial) {
41: this.startzeit = startzeit;
42: this.dokumentenklassen = dokumentenklassen;
43: this.maschinen = maschinen;
44: this.mitarbeiter = mitarbeiter;
45: this.verfuegbaresMaterial = verfuegbaresMaterial;
46: this.produktionsauftragsParameter = produktionsauftragsParameter;
47: this.maschinenRollenbelegungServiceParameter = maschinenRollenbelegungServiceParameter;
48: }
49:
50: /**
51: * Erstellt das Kommando mit den entsprechenden Parametern für die Operation.
52: *
53: * @param startzeit füt findeOptimaleParameterAus.
54: * @param dokumentenklassen für findeOptimaleParameterAus.
55: * @param produktionsauftragsParameter für findeOptimaleParameterAus.
56: * @param maschinen für findeOptimaleParameterAus.
57: * @param mitarbeiter für findeOptimaleParameterAus.
58: * @param maschinenRollenbelegungServiceParameter für findeOptimaleParameterAus.
59: * @param verfuegbaresMaterial für findeOptimaleParameterAus.
60: * @return das erstellte Kommando
61: */
62: public static FindeOptimaleParameterAusKommando create(final LocalDateTime startzeit,
63: final Collection<Dokumentenklasse> dokumentenklassen,
64: final List<Maschine> maschinen,
65: final List<Mitarbeiter> mitarbeiter,
66: final Collection<MaterialMitMessung<?>> verfuegbaresMaterial,
67: final Set<ProduktionsauftragsParameter> produktionsauftragsParameter,
68: final MaschinenRollenbelegungServiceParameter maschinenRollenbelegungServiceParameter
69: ) {
70: return new FindeOptimaleParameterAusKommando(startzeit, dokumentenklassen, produktionsauftragsParameter, maschinen, mitarbeiter,
71: maschinenRollenbelegungServiceParameter, verfuegbaresMaterial);
72: }
73:
74: @Override
75: protected Pair<Set<ProduktionsauftragsParameter>, MaschinenRollenbelegungServiceParameter> doIt() {
76: return new TagesplanungsServiceImpl(this.startzeit).findeOptimaleParameterAus(
77: this.dokumentenklassen,
78: this.maschinen,
79: this.mitarbeiter,
80: this.verfuegbaresMaterial,
81: this.produktionsauftragsParameter,
82: this.maschinenRollenbelegungServiceParameter);
83: }
84:
85: @Override
86: public void accept(final KommandoVisitor v) throws PPSException {
87: // TODO Wenn man den Visitor dies handeln lässt, muss der Visitor aus model das Packet service kennen.
88: // Service kennt aber schon model und wir hätten eine circular dependency
89: }
90: }