/* * Copyright (c) 2012 EMC Corporation * All Rights Reserved */ package com.emc.storageos.db.client; import com.emc.storageos.db.client.model.TimeSeriesSerializer; /** * Callback interface for receiving time series data chunk * * @param <T> */ public interface TimeSeriesQueryResult<T extends TimeSeriesSerializer.DataPoint> { /** * queryTimeSeries calls this method for each time series record. For example, * queryTimeSeries(EventTimeSeries.class, ...) will call this method with deserialized * Event for every record in the specified time bucket. * * @param data */ void data(T data, long insertionTimeMs); /** * Called when all data points have been retrieved */ void done(); /** * Called when an error is encountered during query. Maybe called multiple * times for each thread servicing this query * * @param e */ void error(Throwable e); }