Class DomainWildcardMappingBuilder<V>

  • Type Parameters:
    V - the type of the value that we map to.

    public class DomainWildcardMappingBuilder<V>
    extends Object
    Builder that allows to build Mappings that support DNS wildcard matching.
    • Constructor Detail

      • DomainWildcardMappingBuilder

        public DomainWildcardMappingBuilder​(V defaultValue)
        Constructor with default initial capacity of the map holding the mappings
        Parameters:
        defaultValue - the default value for Mapping.map(Object) )} to return when nothing matches the input
      • DomainWildcardMappingBuilder

        public DomainWildcardMappingBuilder​(int initialCapacity,
                                            V defaultValue)
        Constructor with initial capacity of the map holding the mappings
        Parameters:
        initialCapacity - initial capacity for the internal map
        defaultValue - the default value for Mapping.map(Object) to return when nothing matches the input
    • Method Detail

      • add

        public DomainWildcardMappingBuilder<V> add​(String hostname,
                                                   V output)
        Adds a mapping that maps the specified (optionally wildcard) host name to the specified output value. null values are forbidden for both hostnames and values.

        DNS wildcard is supported as hostname. The wildcard will only match one sub-domain deep and only when wildcard is used as the most-left label. For example:

        *.netty.io will match xyz.netty.io but NOT abc.xyz.netty.io

        Parameters:
        hostname - the host name (optionally wildcard)
        output - the output value that will be returned by Mapping.map(Object) when the specified host name matches the specified input host name