/* * Copyright (c) 2008-2013 EMC Corporation * All Rights Reserved */ package com.emc.storageos.model.vpool; import com.emc.storageos.model.pools.VirtualArrayAssignmentChanges; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import com.emc.storageos.model.valid.Length; /** * Parameter to update VirtualPool */ @XmlRootElement(name = "vpool_update") public class VirtualPoolUpdateParam { private VirtualArrayAssignmentChanges varrayChanges; private String name; private String description; private ProtocolChanges protocolChanges; private Boolean useMatchedPools; private String systemType; private String provisionType; public VirtualPoolUpdateParam() { } public VirtualPoolUpdateParam(VirtualArrayAssignmentChanges varrayChanges, String name, String description, ProtocolChanges protocolChanges, Boolean useMatchedPools, String systemType, String provisionType) { this.varrayChanges = varrayChanges; this.name = name; this.description = description; this.protocolChanges = protocolChanges; this.useMatchedPools = useMatchedPools; this.systemType = systemType; this.provisionType = provisionType; } /** * The virtual array assignment changes for the virtual pool. * */ @XmlElement(name = "varray_changes") public VirtualArrayAssignmentChanges getVarrayChanges() { return varrayChanges; } public void setVarrayChanges(VirtualArrayAssignmentChanges varrayChanges) { this.varrayChanges = varrayChanges; } /** * The new virtual pool name. * */ @XmlElement(name = "name") @Length(min = 2, max = 128) public String getName() { return name; } public void setName(String name) { this.name = name; } /** * The new virtual pool description. * */ @XmlElement(name = "description") public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } /** * The protocol changes for the virtual pool. * */ @XmlElement(name = "protocol_changes") public ProtocolChanges getProtocolChanges() { return protocolChanges; } public void setProtocolChanges(ProtocolChanges protocolChanges) { this.protocolChanges = protocolChanges; } /** * Determines if matched or valid assigned pools are returned from * command to retrieve the list of storage pools. * */ @XmlElement(name = "use_matched_pools") public Boolean getUseMatchedPools() { return useMatchedPools; } public void setUseMatchedPools(Boolean useMatchedPools) { this.useMatchedPools = useMatchedPools; } /** * The new supported system type for the virtual pool. * Valid values: * NONE * vnxblock (Block) * vmax (Block) * vnxfile (File) * isilon (File) * netapp (File) * */ @XmlElement(name = "system_type") public String getSystemType() { return systemType; } public void setSystemType(String systemType) { this.systemType = systemType; } /** * The new provisioning type for the virtual pool, * Valid values: * NONCE * Thin * Thick */ @XmlElement(name = "provisioning_type", required = false) public String getProvisionType() { return provisionType; } public void setProvisionType(String provisionType) { this.provisionType = provisionType; } }