Package io.netty.util

Class DomainWildcardMappingBuilder<V>

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

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

      Constructors 
      Constructor Description
      DomainWildcardMappingBuilder​(int initialCapacity, V defaultValue)
      Constructor with initial capacity of the map holding the mappings
      DomainWildcardMappingBuilder​(V defaultValue)
      Constructor with default initial capacity of the map holding the mappings
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      DomainWildcardMappingBuilder<V> add​(java.lang.String hostname, V output)
      Adds a mapping that maps the specified (optionally wildcard) host name to the specified output value.
      Mapping<java.lang.String,​V> build()
      Creates a new instance of an immutable Mapping.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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​(java.lang.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
      • build

        public Mapping<java.lang.String,​V> build()
        Creates a new instance of an immutable Mapping.
        Returns:
        new Mapping instance