/* * Copyright (c) 2013 EMC Corporation * All Rights Reserved */ package com.emc.storageos.volumecontroller; import java.io.Serializable; import java.net.URI; import java.util.List; import java.util.Map; import com.emc.storageos.blockorchestrationcontroller.VolumeDescriptor; /** * Recommendation for a placement is a storage pool and its storage device. */ @SuppressWarnings("serial") public class SRDFRecommendation extends Recommendation { public static class Target implements Serializable { // Target (for protection only) private URI targetDevice; private URI targetPool; // The target device houses the source storage system's RA Group this should be protected over. private URI sourceRAGroup; private String copyMode; // The volume descriptors are kept here to pass up to SRDFTargetRecommendations private List<VolumeDescriptor> descriptors; public URI getTargetStorageDevice() { return targetDevice; } public URI getTargetStoragePool() { return targetPool; } public URI getSourceRAGroup() { return sourceRAGroup; } public void setTargetPool(URI targetPool) { this.targetPool = targetPool; } public void setTargetStorageDevice(URI targetDevice) { this.targetDevice = targetDevice; } public void setSourceRAGroup(URI sourceRAGroup) { this.sourceRAGroup = sourceRAGroup; } public String getCopyMode() { return copyMode; } public void setCopyMode(String copyMode) { this.copyMode = copyMode; } public List<VolumeDescriptor> getDescriptors() { return descriptors; } public void setDescriptors(List<VolumeDescriptor> descriptors) { this.descriptors = descriptors; } } // Source private Map<URI, SRDFRecommendation.Target> _varrayTargetMap; private URI _vpoolChangeVolume; private URI _vpoolChangeVpool; public Map<URI, SRDFRecommendation.Target> getVirtualArrayTargetMap() { return _varrayTargetMap; } public void setVirtualArrayTargetMap( Map<URI, SRDFRecommendation.Target> varrayTargetMap) { this._varrayTargetMap = varrayTargetMap; } public void setVpoolChangeVolume(URI id) { _vpoolChangeVolume = id; } public URI getVpoolChangeVolume() { return _vpoolChangeVolume; } public void setVpoolChangeVpool(URI id) { _vpoolChangeVpool = id; } public URI getVpoolChangeVpool() { return _vpoolChangeVpool; } }