java.lang.Object
es.urjc.etsii.grafo.io.serializers.ResultsSerializerListener<S,I>
@Component
public class ResultsSerializerListener<S extends Solution<S,I>,I extends Instance>
extends Object
Retrieve results and export to disk when appropriate
-
Constructor Summary
ConstructorsConstructorDescriptionResultsSerializerListener
(AbstractEventStorage<S, I> eventStorage, List<ResultsSerializer<S, I>> serializers) Construct a result serializer listener. -
Method Summary
Modifier and TypeMethodDescriptiongetExpData
(String expName) getFilename
(AbstractSerializerConfig config, String experimentName, long startTimestamp) Get filenamevoid
Save results when experiment ends.void
saveOnFreq
(String expName, long expStart, ResultExportFrequency frequency) Save results using each serializer with the given frequencyvoid
Save results each time an instance processing ends
-
Constructor Details
-
ResultsSerializerListener
public ResultsSerializerListener(AbstractEventStorage<S, I> eventStorage, List<ResultsSerializer<S, I>> serializers) Construct a result serializer listener.- Parameters:
eventStorage
- Event storage serviceserializers
- List of available Result Serializers
-
-
Method Details
-
saveOnFreq
Save results using each serializer with the given frequency- Parameters:
expName
- experiment name, as defined in the configurationexpStart
- experiment start time, as UNIX timestampfrequency
- save frequency, will check each serializer config and skip if the frequency configured does not match
-
saveOnExperimentEnd
Save results when experiment ends.
- Parameters:
event
- aExperimentEndedEvent
object.
-
saveOnInstanceEnd
Save results each time an instance processing ends- Parameters:
event
- aExperimentEndedEvent
object.
-
getExpData
-
getFilename
public String getFilename(AbstractSerializerConfig config, String experimentName, long startTimestamp) Get filename- Parameters:
experimentName
- experiment name- Returns:
- the file name
-