24 lines
660 B
Java
24 lines
660 B
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.accounting.datamodel;
|
|
|
|
import org.gcube.accounting.exception.InvalidValueException;
|
|
import org.gcube.accounting.exception.NotAggregatableRecordsExceptions;
|
|
|
|
/**
|
|
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
|
|
*/
|
|
public interface AggregatedUsageRecord<T extends B, B extends SingleUsageRecord> extends SingleUsageRecord {
|
|
|
|
|
|
public T getAggregatedUsageRecord(B b) throws InvalidValueException ;
|
|
|
|
/**
|
|
* Aggregate the Record provided as parameter with this record if Aggregatable
|
|
* @throws NotAggregatableRecordsExceptions
|
|
*/
|
|
public void aggregate(T record) throws NotAggregatableRecordsExceptions;
|
|
|
|
}
|