Module 
Package org.xnio

Class OptionMap.Builder

  • Enclosing class:
    OptionMap

    public static final class OptionMap.Builder
    extends java.lang.Object
    A builder for immutable option maps. Create an instance with the OptionMap.builder() method.
    • Method Detail

      • parse

        public <T> OptionMap.Builder parse​(Option<T> key,
                                           java.lang.String stringValue)
        Set a key-value pair, parsing the value from the given string.
        Type Parameters:
        T - the option type
        Parameters:
        key - the key
        stringValue - the string value
        Returns:
        this builder
      • parse

        public <T> OptionMap.Builder parse​(Option<T> key,
                                           java.lang.String stringValue,
                                           java.lang.ClassLoader classLoader)
        Set a key-value pair, parsing the value from the given string.
        Type Parameters:
        T - the option type
        Parameters:
        key - the key
        stringValue - the string value
        classLoader - the class loader to use for parsing the value
        Returns:
        this builder
      • parseAll

        public OptionMap.Builder parseAll​(java.util.Properties props,
                                          java.lang.String prefix,
                                          java.lang.ClassLoader optionClassLoader)
        Add all options from a properties file. Finds all entries which start with a given prefix followed by '.'; the remainder of the property key (after the prefix) is the option name, and the value is the option value.

        If the prefix does not end with '.' character, a '.' will be appended to it before parsing.

        Parameters:
        props - the properties to read
        prefix - the prefix
        optionClassLoader - the class loader to use to resolve option names
        Returns:
        this builder
      • parseAll

        public OptionMap.Builder parseAll​(java.util.Properties props,
                                          java.lang.String prefix)
        Add all options from a properties file. Finds all entries which start with a given prefix followed by '.'; the remainder of the property key (after the prefix) is the option name, and the value is the option value.

        If the prefix does not end with '.' character, a '.' will be appended to it before parsing.

        Parameters:
        props - the properties to read
        prefix - the prefix
        Returns:
        this builder
      • set

        public <T> OptionMap.Builder set​(Option<T> key,
                                         T value)
        Set a key-value pair.
        Type Parameters:
        T - the option type
        Parameters:
        key - the key
        value - the value
        Returns:
        this builder
      • set

        public OptionMap.Builder set​(Option<java.lang.Integer> key,
                                     int value)
        Set an int value for an Integer key.
        Parameters:
        key - the option
        value - the value
        Returns:
        this builder
      • setSequence

        public OptionMap.Builder setSequence​(Option<Sequence<java.lang.Integer>> key,
                                             int... values)
        Set int values for an Integer sequence key.
        Parameters:
        key - the key
        values - the values
        Returns:
        this builder
      • set

        public OptionMap.Builder set​(Option<java.lang.Long> key,
                                     long value)
        Set a long value for a Long key.
        Parameters:
        key - the option
        value - the value
        Returns:
        this builder
      • setSequence

        public OptionMap.Builder setSequence​(Option<Sequence<java.lang.Long>> key,
                                             long... values)
        Set long values for a Long sequence key.
        Parameters:
        key - the key
        values - the values
        Returns:
        this builder
      • set

        public OptionMap.Builder set​(Option<java.lang.Boolean> key,
                                     boolean value)
        Set a boolean value for a Boolean key.
        Parameters:
        key - the option
        value - the value
        Returns:
        this builder
      • setSequence

        public OptionMap.Builder setSequence​(Option<Sequence<java.lang.Boolean>> key,
                                             boolean... values)
        Set boolean values for an Boolean sequence key.
        Parameters:
        key - the key
        values - the values
        Returns:
        this builder
      • setSequence

        public <T> OptionMap.Builder setSequence​(Option<Sequence<T>> key,
                                                 T... values)
        Set a key-value pair, where the value is a sequence type.
        Type Parameters:
        T - the option type
        Parameters:
        key - the key
        values - the values
        Returns:
        this builder
      • add

        public OptionMap.Builder add​(java.util.Map<?,​?> map)
                              throws java.lang.ClassCastException
        Add all the entries of a map. Any keys of the map which are not valid Options, or whose values are not valid arguments for the given Option, will cause an exception to be thrown. Any keys which occur more than once in this builder will be overwritten with the last occurring value.
        Parameters:
        map - the map
        Returns:
        this builder
        Throws:
        java.lang.ClassCastException - if any entries of the map are not valid option-value pairs
      • addAll

        public OptionMap.Builder addAll​(OptionMap optionMap)
        Add all entries from an existing option map to the one being built. Any keys which occur more than once in this builder will be overwritten with the last occurring value.
        Parameters:
        optionMap - the original option map
        Returns:
        this builder
      • getMap

        public OptionMap getMap()
        Build a map that reflects the current state of this builder.
        Returns:
        the new immutable option map