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 filenamevoidSave results when experiment ends.voidsaveOnFreq(String expName, long expStart, ResultExportFrequency frequency) Save results using each serializer with the given frequencyvoidSave 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- aExperimentEndedEventobject.
-
saveOnInstanceEnd
Save results each time an instance processing ends- Parameters:
event- aExperimentEndedEventobject.
-
getExpData
-
getFilename
public String getFilename(AbstractSerializerConfig config, String experimentName, long startTimestamp) Get filename- Parameters:
experimentName- experiment name- Returns:
- the file name
-