package org.ovirt.engine.api.restapi.resource; import java.util.List; import javax.ws.rs.core.Response; import org.ovirt.engine.api.model.DiskProfile; import org.ovirt.engine.api.model.DiskProfiles; import org.ovirt.engine.api.resource.DiskProfileResource; import org.ovirt.engine.api.resource.DiskProfilesResource; import org.ovirt.engine.core.common.businessentities.StorageDomain; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryParametersBase; import org.ovirt.engine.core.common.queries.VdcQueryType; public class BackendDiskProfilesResource extends AbstractBackendDiskProfilesResource implements DiskProfilesResource { @Override public DiskProfiles list() { return performList(); } @Override protected List<org.ovirt.engine.core.common.businessentities.profiles.DiskProfile> getDiskProfilesCollection() { return getBackendCollection(VdcQueryType.GetAllDiskProfiles, new VdcQueryParametersBase()); } @Override public Response add(DiskProfile diskProfile) { return super.add(diskProfile); } @Override protected void validateParameters(DiskProfile diskProfile) { validateParameters(diskProfile, "name", "storageDomain.id"); String storageId = diskProfile.getStorageDomain().getId(); // verify the storagedomain.id is well provided getEntity(StorageDomain.class, VdcQueryType.GetStorageDomainById, new IdQueryParameters(asGuid(storageId)), "storagedomain: id=" + storageId); } @Override public DiskProfileResource getDiskProfileResource(String id) { return inject(new BackendDiskProfileResource(id)); } }