package org.ovirt.engine.api.restapi.resource; import java.util.Set; import org.ovirt.engine.api.model.Disk; import org.ovirt.engine.api.model.Disks; import org.ovirt.engine.api.resource.StorageDomainContentDiskResource; import org.ovirt.engine.api.resource.StorageDomainContentDisksResource; import org.ovirt.engine.core.compat.Guid; public class BackendExportDomainDisksResource extends AbstractBackendCollectionResource<Disk, org.ovirt.engine.core.common.businessentities.storage.Disk> implements StorageDomainContentDisksResource { AbstractBackendStorageDomainContentResource parent; public BackendExportDomainDisksResource(AbstractBackendStorageDomainContentResource parent) { super(Disk.class, org.ovirt.engine.core.common.businessentities.storage.Disk.class); this.parent = parent; } @Override public Disks list() { Disks disks = new Disks(); for (Guid diskImageId : getDiskIds()) { disks.getDisks().add(addLinks(map(getDisk(diskImageId)))); } return disks; } protected Set<Guid> getDiskIds() { return parent.getDiskMap().keySet(); } protected org.ovirt.engine.core.common.businessentities.storage.Disk getDisk(Guid id) { java.util.Map<Guid, org.ovirt.engine.core.common.businessentities.storage.Disk> map = parent.getDiskMap(); return map.get(id); } public AbstractBackendStorageDomainContentResource getParent() { return parent; } @Override public StorageDomainContentDiskResource getDiskResource(String id) { return inject(new BackendExportDomainDiskResource(id, this)); } }