Class Argument

    • Field Detail

      • PROPERTY_VALUE

        public static final java.lang.String PROPERTY_VALUE
        The property name for the argument's raw value.
        See Also:
        Constant Field Values
      • PROPERTY_OPERATOR

        public static final java.lang.String PROPERTY_OPERATOR
        The property name for the argument's current operator.
        See Also:
        Constant Field Values
      • DEFERRED_LIST

        public static final java.util.List<java.lang.Object> DEFERRED_LIST
      • path2LoadedValues

        public static final java.util.HashMap<java.lang.String,​java.util.List<java.lang.Object>> path2LoadedValues
      • path2LoadedValuesHeader

        public static final java.util.HashMap<java.lang.String,​java.lang.String[]> path2LoadedValuesHeader
      • value

        protected java.lang.Object value
      • defaultValue

        protected final java.lang.Object defaultValue
      • allowedValues

        protected java.util.List<java.lang.Object> allowedValues
    • Constructor Detail

      • Argument

        public Argument​(ArgumentType type,
                        ArgumentDescription argDescr,
                        java.lang.Boolean optional,
                        java.lang.Object defaultValue,
                        java.util.List<? extends java.lang.Object> allowedValues,
                        java.net.URI valuesPath,
                        java.util.List<java.lang.String> operators,
                        java.lang.Boolean advanced,
                        java.lang.Integer displayWidth)
        Base constructor for all arguments.

        All extensions of this abstract type are recommended to build via this constructor

        Parameters:
        type - - the type of argument
        argDescr - - the argument description
        optional - - true if this argument is not required, false otherwise
        defaultValue - - the initial value for this argument
        allowedValues - - a list of allowed values for this argument
        operators - - a list of operators supported by this argument
        advanced - - true if argument is advanced, otherwise false. Can be used to determine visibility mode of argument.
      • Argument

        public Argument​(Argument arg)
        Constructor that copies the input argument.
        Parameters:
        arg - the argument to copy
    • Method Detail

      • getName

        public java.lang.String getName()
        Get argument name.
        Returns:
        the argument name
      • getDescription

        public java.lang.String getDescription()
        Get argument description.
        Returns:
        the argument description
      • getTooltip

        public java.lang.String getTooltip()
        Get argument tooltip.
        Returns:
        the argument tooltip
      • isOptional

        public boolean isOptional()
        Get if argument is optional.
        Returns:
        true if argument is optional, otherwise false
      • isEmpty

        public boolean isEmpty()
        Get if argument is empty.
        Returns:
        true if argument is empty, otherwise false
      • isAdvanced

        public boolean isAdvanced()
        Get if argument is advanced.
        Returns:
        true if argument is advanced, otherwise false
      • getDisplayWidth

        public java.lang.Integer getDisplayWidth()
        Get the display width for argument.
        Returns:
        the display width for argument
      • setDisplayWidth

        public void setDisplayWidth​(java.lang.Integer displayWidth)
        Set the display width for argument.
        Parameters:
        displayWidth - the display width to set
      • getDisplayName

        public java.lang.String getDisplayName()
        Get the name to display for argument.
        Returns:
        display name
      • getValuesPath

        public java.lang.String getValuesPath()
      • getDefaultValue

        public java.lang.Object getDefaultValue()
      • checkAllowed

        protected void checkAllowed​(java.lang.Object theValue)
      • setValue

        public void setValue​(java.lang.Object value,
                             boolean checkCommaSeparatedValues)
      • getValue

        public java.lang.Object getValue()
      • setValue

        public void setValue​(java.lang.Object value)
      • getOperator

        public java.lang.String getOperator()
      • setOperator

        public void setOperator​(java.lang.String operator)
      • getOperators

        public java.util.List<java.lang.String> getOperators()
        Returns:
        a list of available operators
      • getElementAt

        public java.lang.Object getElementAt​(int index)
      • getSize

        public int getSize()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • hasDeferredValues

        public boolean hasDeferredValues()
      • deferredValuesLoaded

        public boolean deferredValuesLoaded()
      • getValuesHeader

        public java.lang.String[] getValuesHeader()
        Get the values header.
        Returns:
        the values header
      • loadDeferredValues

        public void loadDeferredValues​(boolean checkForHeader,
                                       java.util.function.Function<java.lang.String,​java.io.BufferedReader> fileResolver)
                                throws java.io.IOException
        Possibly long running, should not be called on the EDT.
        Throws:
        java.io.IOException
      • parseValue

        protected java.lang.Object parseValue​(java.lang.String val)
      • copyArgument

        public abstract Argument copyArgument()
        Make a copy of the argument.
        Returns:
        the argument copy