Skip to content

Commit e33a8a3

Browse files
committed
Forward information to converters
1 parent 9924312 commit e33a8a3

File tree

8 files changed

+527
-173
lines changed

8 files changed

+527
-173
lines changed

src/main/scala/edu/ie3/simbench/actor/Converter.scala

Lines changed: 55 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ object Converter {
4141
inputFileColumnSeparator,
4242
removeSwitches,
4343
amountOfWorkers,
44+
createTimeSeries,
4445
useDirectoryHierarchy,
4546
targetDirectory,
4647
csvColumnSeparator,
@@ -71,6 +72,7 @@ object Converter {
7172
inputFileColumnSeparator,
7273
removeSwitches,
7374
amountOfWorkers,
75+
createTimeSeries,
7476
converter
7577
)
7678
}
@@ -87,6 +89,7 @@ object Converter {
8789
* @param inputFileColumnSeparator Column separator of the input data
8890
* @param removeSwitches Whether or not to remove switches in final model
8991
* @param amountOfWorkers Amount of workers to convert participants
92+
* @param createTimeSeries Whether to create time series or not
9093
* @param coordinator Reference to the coordinator
9194
* @return Behavior to do so
9295
*/
@@ -100,6 +103,7 @@ object Converter {
100103
inputFileColumnSeparator: String,
101104
removeSwitches: Boolean,
102105
amountOfWorkers: Int,
106+
createTimeSeries: Boolean,
103107
coordinator: ActorRef[Coordinator.CoordinatorMessage]
104108
): Behaviors.Receive[ConverterMessage] = Behaviors.receive {
105109
case (ctx, MutatorInitialized(mutator)) =>
@@ -116,6 +120,7 @@ object Converter {
116120
inputFileColumnSeparator,
117121
removeSwitches,
118122
amountOfWorkers,
123+
createTimeSeries,
119124
mutator,
120125
coordinator
121126
)
@@ -194,26 +199,44 @@ object Converter {
194199
if (simBenchModel.loads.nonEmpty) {
195200
val loadConverter =
196201
ctx.spawn(LoadConverter(), s"loadConverter_${stateData.simBenchCode}")
197-
loadConverter ! LoadConverter.Init(
198-
stateData.simBenchCode,
199-
stateData.amountOfWorkers,
200-
simBenchModel.loadProfiles,
201-
stateData.mutator,
202-
ctx.self
203-
)
202+
if (stateData.createTimeSeries) {
203+
loadConverter ! LoadConverter.InitWithTimeSeries(
204+
stateData.simBenchCode,
205+
stateData.amountOfWorkers,
206+
simBenchModel.loadProfiles,
207+
stateData.mutator,
208+
ctx.self
209+
)
210+
} else {
211+
loadConverter ! LoadConverter.InitWithoutTimeSeries(
212+
stateData.simBenchCode,
213+
stateData.amountOfWorkers,
214+
stateData.mutator,
215+
ctx.self
216+
)
217+
}
204218
} else {
205219
ctx.self ! LoadsConverted(Map.empty[LoadInput, UUID])
206220
}
207221
if (simBenchModel.res.nonEmpty) {
208222
val resConverter =
209223
ctx.spawn(ResConverter(), s"resConverter_${stateData.simBenchCode}")
210-
resConverter ! ResConverter.Init(
211-
stateData.simBenchCode,
212-
stateData.amountOfWorkers,
213-
simBenchModel.resProfiles,
214-
stateData.mutator,
215-
ctx.self
216-
)
224+
if (stateData.createTimeSeries) {
225+
resConverter ! ResConverter.InitWithTimeSeries(
226+
stateData.simBenchCode,
227+
stateData.amountOfWorkers,
228+
simBenchModel.resProfiles,
229+
stateData.mutator,
230+
ctx.self
231+
)
232+
} else {
233+
resConverter ! ResConverter.InitWithoutTimeSeries(
234+
stateData.simBenchCode,
235+
stateData.amountOfWorkers,
236+
stateData.mutator,
237+
ctx.self
238+
)
239+
}
217240
} else {
218241
ctx.self ! ResConverted(Map.empty[FixedFeedInInput, UUID])
219242
}
@@ -223,13 +246,22 @@ object Converter {
223246
PowerPlantConverter(),
224247
s"powerPlantConverter_${stateData.simBenchCode}"
225248
)
226-
powerPlantConverter ! PowerPlantConverter.Init(
227-
stateData.simBenchCode,
228-
stateData.amountOfWorkers,
229-
simBenchModel.powerPlantProfiles,
230-
stateData.mutator,
231-
ctx.self
232-
)
249+
if (stateData.createTimeSeries) {
250+
powerPlantConverter ! PowerPlantConverter.InitWithTimeSeries(
251+
stateData.simBenchCode,
252+
stateData.amountOfWorkers,
253+
simBenchModel.powerPlantProfiles,
254+
stateData.mutator,
255+
ctx.self
256+
)
257+
} else {
258+
powerPlantConverter ! PowerPlantConverter.InitWithoutTimeSeries(
259+
stateData.simBenchCode,
260+
stateData.amountOfWorkers,
261+
stateData.mutator,
262+
ctx.self
263+
)
264+
}
233265
} else {
234266
ctx.self ! PowerPlantsConverted(Map.empty[FixedFeedInInput, UUID])
235267
}
@@ -616,6 +648,7 @@ object Converter {
616648
inputFileColumnSeparator: String,
617649
removeSwitches: Boolean,
618650
amountOfWorkers: Int,
651+
createTimeSeries: Boolean,
619652
mutator: ActorRef[Mutator.MutatorMessage],
620653
coordinator: ActorRef[Coordinator.CoordinatorMessage]
621654
)
@@ -680,6 +713,7 @@ object Converter {
680713
inputFileColumnSeparator: String,
681714
removeSwitches: Boolean,
682715
amountOfWorkers: Int,
716+
createTimeSeries: Boolean,
683717
useDirectoryHierarchy: Boolean,
684718
targetDirectory: String,
685719
csvColumnSeparator: String,

src/main/scala/edu/ie3/simbench/actor/Coordinator.scala

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ object Coordinator {
2727
config.io.input.csv.separator,
2828
config.conversion.removeSwitches,
2929
config.conversion.participantWorkersPerType,
30+
config.conversion.createTimeSeries,
3031
config.io.output.csv.directoryHierarchy,
3132
config.io.output.targetFolder,
3233
config.io.output.csv.separator,
@@ -47,6 +48,7 @@ object Coordinator {
4748
config.io.input.csv.separator,
4849
config.conversion.removeSwitches,
4950
config.conversion.participantWorkersPerType,
51+
config.conversion.createTimeSeries,
5052
config.io.output.csv.directoryHierarchy,
5153
config.io.output.targetFolder,
5254
config.io.output.csv.separator,
@@ -100,6 +102,7 @@ object Coordinator {
100102
stateData.inputFileColumnSeparator,
101103
stateData.removeSwitches,
102104
stateData.amountOfWorkers,
105+
stateData.createTimeSeries,
103106
stateData.useDirectoryHierarchy,
104107
stateData.targetDirectory,
105108
stateData.csvColumnSeparator,
@@ -135,6 +138,7 @@ object Coordinator {
135138
inputFileColumnSeparator: String,
136139
removeSwitches: Boolean,
137140
amountOfWorkers: Int,
141+
createTimeSeries: Boolean,
138142
useDirectoryHierarchy: Boolean,
139143
targetDirectory: String,
140144
csvColumnSeparator: String,
@@ -152,6 +156,7 @@ object Coordinator {
152156
inputFileColumnSeparator,
153157
removeSwitches,
154158
amountOfWorkers,
159+
createTimeSeries,
155160
useDirectoryHierarchy,
156161
targetDirectory,
157162
csvColumnSeparator,
@@ -173,6 +178,7 @@ object Coordinator {
173178
inputFileColumnSeparator: String,
174179
removeSwitches: Boolean,
175180
amountOfWorkers: Int,
181+
createTimeSeries: Boolean,
176182
useDirectoryHierarchy: Boolean,
177183
targetDirectory: String,
178184
csvColumnSeparator: String,

0 commit comments

Comments
 (0)