/* * Copyright (c) 2015 EMC Corporation * All Rights Reserved */ import java.util.List; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; import com.emc.storageos.model.file.FileExportUpdateParams.ExportOperationErrorType; @XmlRootElement public class ExportRule { // Part of payload Model private String anon; private String secFlavor; private List<String> readOnlyHosts; private List<String> readWriteHosts; private List<String> rootHosts; // Not a part of payload model - for internal use only. private boolean isToProceed = false; private ExportOperationErrorType errorTypeIfNotToProceed; public boolean isToProceed() { return isToProceed; } public void setToProceed(boolean isToProceed, ExportOperationErrorType type) { this.isToProceed = isToProceed; errorTypeIfNotToProceed = type; } public ExportOperationErrorType getErrorTypeIfNotToProceed() { return errorTypeIfNotToProceed; } @XmlElementWrapper(name = "readOnlyHosts") @XmlElement(name = "endPoint") public List<String> getReadOnlyHosts() { return readOnlyHosts; } public void setReadOnlyHosts(List<String> readOnlyHosts) { this.readOnlyHosts = readOnlyHosts; } @XmlElementWrapper(name = "readWriteHosts") @XmlElement(name = "endPoint") public List<String> getReadWriteHosts() { return readWriteHosts; } public void setReadWriteHosts(List<String> readWriteHosts) { this.readWriteHosts = readWriteHosts; } @XmlElementWrapper(name = "rootHosts") @XmlElement(name = "endPoint") public List<String> getRootHosts() { return rootHosts; } public void setRootHosts(List<String> rootHosts) { this.rootHosts = rootHosts; } /** * Security flavor of an export e.g. sys, krb, krbp or krbi * * */ @XmlElement(name = "secFlavor", required = false) public String getSecFlavor() { return secFlavor; } public void setSecFlavor(String secFlavor) { this.secFlavor = secFlavor; } /** * Anonymous root user mapping e.g. "root", "nobody" or "anyUserName" * * */ @XmlElement(name = "anon", required = false) public String getAnon() { return anon; } public void setAnon(String anon) { this.anon = anon; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("secFlavor : ").append( (secFlavor != null) ? secFlavor : ""); sb.append("anon : ").append( (anon != null) ? anon : ""); sb.append("readOnlyHosts : ").append( (readOnlyHosts != null) ? readOnlyHosts.size() : 0); sb.append("readWriteHosts : ").append( (readWriteHosts != null) ? readWriteHosts.size() : 0); sb.append("rootHosts : ").append( (rootHosts != null) ? rootHosts.size() : 0); return sb.toString(); } }