package org.kairosdb.rollup; import java.util.List; /** * Manages access to the roll up task store. */ public interface RollUpTasksStore { /** * Writes all tasks to the store. Note this overwrites existing tasks in the store. * * @param tasks tasks to write to the store. */ void write(List<RollupTask> tasks) throws RollUpException; /** * Reads all tasks from the store * * @return all roll up tasks */ List<RollupTask> read() throws RollUpException; /** * Returns the time the store was last modified. /** Removes the task specified by the id. @throws RollUpException if the task could not be removed @param id id of the task to remove */ void remove(String id) throws RollUpException; /** Adds the listener to be notified when a task is added, changed, or removed. @param listener listener to notify */ void addListener(RollupTaskChangeListener listener); }