Class BufferAggregationScheduler
- java.lang.Object
-
- org.gcube.documentstore.records.aggregation.AggregationScheduler
-
- org.gcube.documentstore.records.aggregation.BufferAggregationScheduler
-
- All Implemented Interfaces:
Runnable
public class BufferAggregationScheduler extends AggregationScheduler
- 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
Fields Modifier and Type Field Description protected longfirstBufferedTimeprotected booleanfirstOfBuffer-
Fields 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
Constructors Constructor Description BufferAggregationScheduler(PersistenceExecutor persistenceExecutor)BufferAggregationScheduler(PersistenceExecutor persistenceExecutor, AggregationConfiguration config)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanisTimeToPersist(int maxRecordNumber, long oldRecordMaxTime)protected voidschedulerSpecificClear()-
Methods 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
-
-
-
-
Constructor Detail
-
BufferAggregationScheduler
public BufferAggregationScheduler(PersistenceExecutor persistenceExecutor)
-
BufferAggregationScheduler
public BufferAggregationScheduler(PersistenceExecutor persistenceExecutor, AggregationConfiguration config)
-
-
Method Detail
-
schedulerSpecificClear
protected void schedulerSpecificClear()
- Specified by:
schedulerSpecificClearin classAggregationScheduler
-
isTimeToPersist
protected boolean isTimeToPersist(int maxRecordNumber, long oldRecordMaxTime)- Specified by:
isTimeToPersistin classAggregationScheduler
-
-