common-smartgears/src/main/java/org/gcube/smartgears/handlers/container/lifecycle/AccountingManager.java

37 lines
1.0 KiB
Java

/**
*
*/
package org.gcube.smartgears.handlers.container.lifecycle;
import static org.gcube.smartgears.Constants.accounting_management;
import java.util.concurrent.TimeUnit;
import javax.xml.bind.annotation.XmlRootElement;
import org.gcube.accounting.persistence.AccountingPersistenceFactory;
import org.gcube.smartgears.handlers.container.ContainerHandler;
import org.gcube.smartgears.handlers.container.ContainerLifecycleEvent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author Luca Frosini (ISTI - CNR) http://www.lucafrosini.com/
*/
@XmlRootElement(name = accounting_management)
public class AccountingManager extends ContainerHandler {
private static Logger logger = LoggerFactory.getLogger(AccountingManager.class);
@Override
public void onStop(ContainerLifecycleEvent.Stop e) {
logger.trace("Going to flush accounting data");
AccountingPersistenceFactory.flushAll(1000, TimeUnit.MILLISECONDS);
}
@Override
public String toString() {
return accounting_management;
}
}