X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2Fargparser%2FArgValue.java;fp=src%2Fjalview%2Fbin%2Fargparser%2FArgValue.java;h=e7ee1a2f29833617fcd7df6f80f94754a3e4eb4d;hb=ccc53e88e3260886f5d3bdacc619c0f374be9b8f;hp=eab38ca3ce8858859d27ce95c6ac22cfa7e4b840;hpb=7cef06600140ffeb5a989117113d510742b9aa5e;p=jalview.git diff --git a/src/jalview/bin/argparser/ArgValue.java b/src/jalview/bin/argparser/ArgValue.java index eab38ca..e7ee1a2 100644 --- a/src/jalview/bin/argparser/ArgValue.java +++ b/src/jalview/bin/argparser/ArgValue.java @@ -34,6 +34,12 @@ public class ArgValue implements Comparable private String value; + private String givenLinkedId = null; + + private String assignedLinkedId = null; + + private boolean setByWildcardLinkedId = false; + /* * Type type is only really used by --help-type */ @@ -48,22 +54,31 @@ public class ArgValue implements Comparable private SubVals subVals; protected ArgValue(Arg a, SubVals sv, Type type, String content, - int argIndex) + int argIndex, boolean setByWildcardLinkedId, String givenLinkedId, + String assignedLinkedId) { this.arg = a; this.value = content; this.argIndex = argIndex; this.subVals = sv == null ? new SubVals("") : sv; this.setType(type); + this.setByWildcardLinkedId = setByWildcardLinkedId; + this.givenLinkedId = givenLinkedId; + this.assignedLinkedId = assignedLinkedId; } - protected ArgValue(Arg a, Type type, String value, int argIndex) + protected ArgValue(Arg a, Type type, String value, int argIndex, + boolean setByWildcardLinkedId, String givenLinkedId, + String assignedLinkedId) { this.arg = a; this.argIndex = argIndex; this.subVals = new SubVals(value); this.value = getSubVals().getContent(); this.setType(type); + this.setByWildcardLinkedId = setByWildcardLinkedId; + this.givenLinkedId = givenLinkedId; + this.assignedLinkedId = assignedLinkedId; } protected void setType(Type t) @@ -124,4 +139,37 @@ public class ArgValue implements Comparable { return this.getArgIndex() - o.getArgIndex(); } + + @Override + public String toString() + { + StringBuilder sb = new StringBuilder(); + sb.append(this.getArg().argString()); + sb.append("="); + if (!this.getSubVals().getSubValMap().isEmpty()) + { + sb.append(this.getSubVals().toString()); + } + sb.append("'"); + sb.append(this.getValue()); + sb.append("'"); + + return sb.toString(); + } + + public String getGivenLinkedId() + { + return this.givenLinkedId; + } + + public String getAssignedLinkedId() + { + return this.assignedLinkedId; + } + + public boolean setByWildcardLinkedId() + { + // looking for deliberately user set wildcard + return this.setByWildcardLinkedId && this.getGivenLinkedId() != null; + } } \ No newline at end of file