accounting-manager/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/query/AccountingQuery4Task.java

43 lines
1.5 KiB
Java

package org.gcube.portlets.admin.accountingmanager.server.amservice.query;
import org.gcube.accounting.analytics.TemporalConstraint;
import org.gcube.accounting.datamodel.usagerecords.StorageUsageRecord;
import org.gcube.portlets.admin.accountingmanager.server.amservice.PeriodModeMap;
import org.gcube.portlets.admin.accountingmanager.shared.data.query.SeriesRequest;
import org.gcube.portlets.admin.accountingmanager.shared.exception.AccountingManagerServiceException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Accounting Query 4 Task
*
* @author "Giancarlo Panichi" email: <a
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
*
*/
public class AccountingQuery4Task extends AccountingQueryBuilder {
protected static Logger logger = LoggerFactory
.getLogger(AccountingQuery4Task.class);
private SeriesRequest seriesRequest;
public AccountingQuery4Task(SeriesRequest seriesRequest) {
this.seriesRequest = seriesRequest;
}
@Override
public void buildOpEx() throws AccountingManagerServiceException {
TemporalConstraint temporalConstraint = new TemporalConstraint(
seriesRequest.getAccountingPeriod().getStartDate().getTime(),
seriesRequest.getAccountingPeriod().getEndDate().getTime(),
PeriodModeMap.getMode(seriesRequest.getAccountingPeriod()
.getPeriod()));
AccountingQuery invocation = new AccountingQuery(
StorageUsageRecord.class, temporalConstraint);
accountingQuerySpec.setOp(invocation);
}
}