Class BufferAggregationScheduler
java.lang.Object
org.gcube.documentstore.records.aggregation.AggregationScheduler
org.gcube.documentstore.records.aggregation.BufferAggregationScheduler
- All Implemented Interfaces:
Runnable
- Author:
- Luca Frosini (ISTI - CNR) This class implements a Simple Buffer with timeout strategy. It buffer a predefined number of Records before invoking a persistence.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.gcube.documentstore.records.aggregation.AggregationScheduler
AggregationScheduler.ReloaderThread -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected longprotected booleanFields inherited from class org.gcube.documentstore.records.aggregation.AggregationScheduler
AGGREGATION_PROPERTIES_FILE, AGGREGATION_SCHEDULER_TIME, BUFFER_RECORD_NUMBER, BUFFER_RECORD_TIME, bufferedRecords, changeConfiguration, CONFIG_DIRECTORY_NAME, FILE_NAME, futureFlush, futureReload, logger, persistenceExecutor, RANDOM_INIT_START, TIME_RELOAD_CONFIGURATION, totalBufferedRecords -
Constructor Summary
ConstructorsConstructorDescriptionBufferAggregationScheduler(PersistenceExecutor persistenceExecutor) BufferAggregationScheduler(PersistenceExecutor persistenceExecutor, AggregationConfiguration config) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanisTimeToPersist(int maxRecordNumber, long oldRecordMaxTime) protected voidMethods inherited from class org.gcube.documentstore.records.aggregation.AggregationScheduler
aggregate, aggregate, CheckConfiguration, clear, flush, getAggregatedRecord, getConfig, getConfiguration, getPropertiesFromFile, instantiateAggregatedRecord, madeAggregation, newInstance, newInstance, reallyFlush, reloadConfiguration, run, setConfig, shutdown
-
Field Details
-
firstOfBuffer
protected boolean firstOfBuffer -
firstBufferedTime
protected long firstBufferedTime
-
-
Constructor Details
-
BufferAggregationScheduler
-
BufferAggregationScheduler
public BufferAggregationScheduler(PersistenceExecutor persistenceExecutor, AggregationConfiguration config)
-
-
Method Details
-
schedulerSpecificClear
protected void schedulerSpecificClear()- Specified by:
schedulerSpecificClearin classAggregationScheduler
-
isTimeToPersist
protected boolean isTimeToPersist(int maxRecordNumber, long oldRecordMaxTime) - Specified by:
isTimeToPersistin classAggregationScheduler
-