package org.zstack.configuration; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.zstack.core.db.DatabaseFacade; import org.zstack.header.configuration.*; /** * Created with IntelliJ IDEA. * User: frank * Time: 2:42 PM * To change this template use File | Settings | File Templates. */ public class DefaultDiskOfferingFactory implements DiskOfferingFactory { public static DiskOfferingType type = new DiskOfferingType("DefaultDiskOfferingType"); @Autowired private DatabaseFacade dbf; @Override public DiskOfferingType getDiskOfferingType() { return type; } @Override @Transactional public DiskOfferingInventory createDiskOffering(DiskOfferingVO vo, APICreateDiskOfferingMsg msg) { dbf.getEntityManager().persist(vo); dbf.getEntityManager().flush(); dbf.getEntityManager().refresh(vo); return DiskOfferingInventory.valueOf(vo); } @Override public DiskOffering getDiskOffering(DiskOfferingVO vo) { return new DiskOfferingBase(vo); } }