package io.jenkins.plugins.sprp.models; import org.eclipse.jgit.errors.NotSupportedException; import java.util.LinkedHashMap; public class Agent { private String label; private String customWorkspace; private String dockerImage; private boolean alwaysPull; private String args; private String dockerfile; private String dir; private boolean reuseNode; private String anyOrNone; private boolean none; // LinkedHashMap is used to preserve the order of insertion in tools as some tests may fail private LinkedHashMap<String, String> tools; public Agent(){} public Agent(String anyOrNone) throws NotSupportedException { if(anyOrNone.equals("any") || anyOrNone.equals("none")) { this.anyOrNone = anyOrNone; } else { throw new NotSupportedException("Agent type " + anyOrNone + "is not supported."); } } public String getLabel() { return label; } public void setLabel(String label) { this.label = label; } public String getCustomWorkspace() { return customWorkspace; } public void setCustomWorkspace(String customWorkspace) { this.customWorkspace = customWorkspace; } public String getArgs() { return args; } public void setArgs(String args) { this.args = args; } public String getDockerfile() { return dockerfile; } public void setDockerfile(String dockerfile) { this.dockerfile = dockerfile; } public String getDir() { return dir; } public void setDir(String dir) { this.dir = dir; } public String getDockerImage() { return this.dockerImage; } public void setDockerImage(String dockerImage) { this.dockerImage = dockerImage; } public boolean getAlwaysPull() { return alwaysPull; } public void setAlwaysPull(boolean alwaysPull) { this.alwaysPull = alwaysPull; } public boolean getReuseNode() { return this.reuseNode; } public void setReuseNode(boolean reuseNode) { this.reuseNode = reuseNode; } public String getAnyOrNone() { return anyOrNone; } public void setAnyOrNone(String anyOrNone) { this.anyOrNone = anyOrNone; } public LinkedHashMap<String, String> getTools() { return tools; } public boolean isNone() { return none; } public void setNone(boolean none) { this.none = none; } public void setTools(LinkedHashMap<String, String> tools) { this.tools = tools; } }