Skip to content

Package: ErstelleMittelfristigePlanungKommando

ErstelleMittelfristigePlanungKommando

nameinstructionbranchcomplexitylinemethod
ErstelleMittelfristigePlanungKommando(Zeitraum, Collection, List, Collection, Collection, Fraction)
M: 0 C: 21
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 8
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(Zeitraum, Collection, List, Collection, Collection, Fraction)
M: 0 C: 10
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: 15
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.wochenplanung;
2:
3: import auftraege.Dokumentenklasse;
4: import auftraege.VoraussichtlicheDokumentenklasse;
5: import maschine.Maschine;
6: import planung.MittelfristigePlanung;
7: import planung.SchichtZeit;
8: import planung.wochenplanung.StandardStrategie;
9: import schnittstelle.kommandoArchitektur.KommandoOhneExceptionMitResultat;
10: import schnittstelle.kommandoArchitektur.KommandoVisitor;
11: import util.Fraction;
12: import util.exceptions.PPSException;
13: import zeit.eintraege.Zeitraum;
14:
15: import java.util.Collection;
16: import java.util.List;
17:
18: /**
19: * Klasse, welche ein Kommando darstellt, welches die Operation planeUndSimuliere aus {@link tagesplanung.TagesplanungsService} kapselt.
20: */
21: public final class ErstelleMittelfristigePlanungKommando extends
22: KommandoOhneExceptionMitResultat<MittelfristigePlanung> {
23:         
24:         private final Zeitraum zeitraum;
25:         private final Collection<SchichtZeit> schichtZeiten;
26:         private final List<Dokumentenklasse> dokumentenklassen;
27:         private final Collection<VoraussichtlicheDokumentenklasse> voraussichtlicheDokumentenklassen;
28:         private final Collection<Maschine> maschinen;
29:         private final Fraction produktionssatz;
30:         
31:         private ErstelleMittelfristigePlanungKommando(final Zeitraum zeitraum,
32:                         final Collection<SchichtZeit> schichtZeiten,
33:                         final List<Dokumentenklasse> dokumentenklassen,
34:                         final Collection<VoraussichtlicheDokumentenklasse> voraussichtlicheDokumentenklassen,
35:                         final Collection<Maschine> maschinen,
36:                         final Fraction produktionssatz) {
37:                 this.schichtZeiten = schichtZeiten;
38:                 this.zeitraum = zeitraum;
39:                 this.dokumentenklassen = dokumentenklassen;
40:                 this.voraussichtlicheDokumentenklassen = voraussichtlicheDokumentenklassen;
41:                 this.maschinen = maschinen;
42:                 this.produktionssatz = produktionssatz;
43:         }
44:         
45:         /**
46:          * Erstellt das Kommando mit den entsprechenden Parametern für die Operation.
47:          *
48:          * @param zeitraum
49:          * für erstelleMittelfristigePlanung.
50:          * @param schichtZeiten
51:          * für erstelleMittelfristigePlanung.
52:          * @param dokumentenklassen
53:          * für erstelleMittelfristigePlanung.
54:          * @param voraussichtlicheDokumentenklassen
55:          * für erstelleMittelfristigePlanung.
56:          * @param maschinen
57:          * für erstelleMittelfristigePlanung.
58:          * @param produktionssatz
59:          * für erstelleMittelfristigePlanung.
60:          * @return das erstellte Kommando.
61:          */
62:         public static ErstelleMittelfristigePlanungKommando create(final Zeitraum zeitraum,
63:                         final Collection<SchichtZeit> schichtZeiten,
64:                         final List<Dokumentenklasse> dokumentenklassen,
65:                         final Collection<VoraussichtlicheDokumentenklasse> voraussichtlicheDokumentenklassen,
66:                         final Collection<Maschine> maschinen,
67:                         final Fraction produktionssatz) {
68:                 return new ErstelleMittelfristigePlanungKommando(zeitraum, schichtZeiten, dokumentenklassen, voraussichtlicheDokumentenklassen, maschinen,
69:                                 produktionssatz);
70:         }
71:         
72:         @Override
73:         protected MittelfristigePlanung doIt() {
74:                 return StandardStrategie.getInstance().erstelleMittelfristigePlanung(
75:                                 this.zeitraum,
76:                                 this.schichtZeiten,
77:                                 this.dokumentenklassen,
78:                                 this.voraussichtlicheDokumentenklassen,
79:                                 this.maschinen,
80:                                 this.produktionssatz);
81:         }
82:         
83:         @Override
84:         public void accept(final KommandoVisitor v) throws PPSException {
85:                 // TODO Wenn man den Visitor dies handeln lässt, muss der Visitor aus model das Packet service kennen.
86:                 // Service kennt aber schon model und wir hätten eine circular dependency
87:         }
88: }