Class Parameters


  • public class Parameters
    extends Object
    • Constructor Detail

      • Parameters

        public Parameters()
        Use "<%" and "%>" by default
      • Parameters

        public Parameters​(String bulkParameters)
        Use "<%" and "%>"" by default
      • Parameters

        public Parameters​(String... bulkParameters)
        Use "<%" and "%>" by default
      • Parameters

        public Parameters​(Collection<String> parameters)
        Use "<%" and "%>" by default
    • Method Detail

      • getEndVarTag

        public String getEndVarTag()
        Returns:
        like "%>"
      • getStartVarTag

        public String getStartVarTag()
        Returns:
        like "<%"
      • isTaggedParameter

        public boolean isTaggedParameter​(String param)
        Parameters:
        param - like
        Returns:
        true if like "<%myvar%>"
      • extractVarNameFromTaggedParameter

        public String extractVarNameFromTaggedParameter​(String param)
        Parameters:
        param - like <%myvar%>
        Returns:
        like "myvar" or null if param is not a valid variable of if it's empty.
      • addVariable

        public String addVariable​(String varName)
        Returns:
        varName
      • removeVariables

        public Parameters removeVariables​(boolean removeParamsIfNoVarToInject)
        Parameters:
        removeParamsIfNoVarToInject - if true, for "-a -b ? -d" -> "-a -d", else "-a -b -d"
        Returns:
        this
      • injectVariables

        public Parameters injectVariables​(Map<String,​String> varsToInject,
                                          boolean removeParamsIfNoVarToInject)
        Parameters:
        removeParamsIfNoVarToInject - if true, for "-a -b ? -d" -> "-a -d", else "-a -b -d"
        Returns:
        this
      • transfertThisConfigurationTo

        public tv.hd3g.processlauncher.cmdline.SimpleParameters transfertThisConfigurationTo​(tv.hd3g.processlauncher.cmdline.SimpleParameters newInstance)
        Don't touch to current parameters, only parameterKeysStartsWith
      • importParametersFrom

        public tv.hd3g.processlauncher.cmdline.SimpleParameters importParametersFrom​(tv.hd3g.processlauncher.cmdline.SimpleParameters previousInstance)
        Transfer (clone) current parameters and parameterKeysStartsWith
      • addAllFrom

        public void addAllFrom​(tv.hd3g.processlauncher.cmdline.SimpleParameters source)
        Don't touch to actual parameters, and clone from source.
      • clear

        public tv.hd3g.processlauncher.cmdline.SimpleParameters clear()
      • hasParameters

        public boolean hasParameters​(String... params)
        Parameters:
        params - (anyMatch) ; params can have "-" or not (it will be added).
      • ifHasNotParameter

        public tv.hd3g.processlauncher.cmdline.SimpleParameters ifHasNotParameter​(Runnable toDoIfMissing,
                                                                                  String... inParameters)
        See SimpleParameters#hasParameters()
      • getParameters

        public List<String> getParameters()
        Returns:
        internal list, never null
      • replaceParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters replaceParameters​(Collection<? extends String> newParameters)
      • addParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters addParameters​(String... params)
        Parameters:
        params - don't alter params
      • addParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters addParameters​(Collection<String> params)
        Parameters:
        params - don't alter params
      • addBulkParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters addBulkParameters​(String params)
        Parameters:
        params - transform spaces in each param to new params: "a b c d" -> ["a", "b", "c", "d"], and it manage " but not tabs.
      • prependParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters prependParameters​(Collection<String> params)
        Parameters:
        params - don't alter params
      • prependParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters prependParameters​(String... params)
        Parameters:
        params - add all in front of command line, don't alter params
      • prependBulkParameters

        public tv.hd3g.processlauncher.cmdline.SimpleParameters prependBulkParameters​(String params)
        Parameters:
        params - params add all in front of command line, transform spaces in each param to new params: "a b c d" -> ["a", "b", "c", "d"], and it manage " but not tabs.
      • setParametersKeysStartsWith

        public tv.hd3g.processlauncher.cmdline.SimpleParameters setParametersKeysStartsWith​(String parameterKeysStartsWith)
        Parameters:
        parameterKeysStartsWith - "-" by default
      • getParametersKeysStartsWith

        public String getParametersKeysStartsWith()
        Returns:
        "-" by default
      • conformParameterKey

        protected String conformParameterKey​(String parameterKey)
        Parameters:
        parameterKey - add "-" in front of paramKey if needed
      • getValues

        public List<String> getValues​(String parameterKey)
        Parameters:
        parameterKey - can have "-" or not (it will be added).
        Returns:
        For "-param val1 -param val2 -param val3" -> val1, val2, val3 ; null if parameterKey can't be found, empty if not values for param
      • removeParameter

        public boolean removeParameter​(String parametersKey,
                                       int paramAsThisKeyPos)
        Search a remove all parameters with paramKey as name, even associated values.
        Parameters:
        parametersKey - can have "-" or not (it will be added).
      • alterParameter

        public boolean alterParameter​(String parameterKey,
                                      String newValue,
                                      int paramAsThisKeyPos)
        Parameters:
        parameterKey - can have "-" or not (it will be added).
        Returns:
        true if done