package jalview.structure; import java.util.ArrayList; import java.util.List; public class StructureCommand implements StructureCommandI { private String command; private List parameters; public StructureCommand(String cmd, String... params) { command = cmd; if (params != null) { for (String p : params) { addParameter(p); } } } @Override public void addParameter(String param) { if (parameters == null) { parameters = new ArrayList<>(); } parameters.add(param); } @Override public String getCommand() { return command; } @Override public List getParameters() { return parameters; } @Override public boolean hasParameters() { return parameters != null && !parameters.isEmpty(); } @Override public String toString() { if (!hasParameters()) { return command; } StringBuilder sb = new StringBuilder(32); sb.append(command).append("("); boolean first = true; for (String p : parameters) { if (!first) { sb.append(","); } first = false; sb.append(p); } sb.append(")"); return sb.toString(); } }