Class HostsTxtNamingService


  • public class HostsTxtNamingService
    extends MetaNamingService
    A naming service based on multiple "hosts.txt" files. Supports .b32.i2p and {b64} lookups. Supports caching. All hostnames are converted to lower case.
    • Field Detail

      • PROP_HOSTS_FILE

        public static final String PROP_HOSTS_FILE
        If this system property is specified, the tunnel will read the given file for hostname=destKey values when resolving names
        See Also:
        Constant Field Values
    • Constructor Detail

      • HostsTxtNamingService

        public HostsTxtNamingService​(I2PAppContext context)
        The naming service should only be constructed and accessed through the application context. This constructor should only be used by the appropriate application context itself.
    • Method Detail

      • lookup

        public Destination lookup​(String hostname,
                                  Properties lookupOptions,
                                  Properties storedOptions)
        Description copied from class: NamingService
        Same as lookup(hostname) but with in and out options Note that whether this (and lookup(hostname)) resolve Base 32 addresses in the form {52 chars}.b32.i2p is NamingService-specific.
        Overrides:
        lookup in class MetaNamingService
        Parameters:
        hostname - mixed case as it could be a key
        lookupOptions - input parameter, NamingService-specific, can be null
        storedOptions - output parameter, NamingService-specific, any stored properties will be added if non-null
        Returns:
        dest or null
      • remove

        public boolean remove​(String hostname,
                              Properties options)
        Description copied from class: MetaNamingService
        Removes from all services
        Overrides:
        remove in class MetaNamingService
        options - NamingService-specific, can be null
        Returns:
        true if removed successfully, false on error or if it did not exist
      • getNames

        public Set<String> getNames​(Properties options)
        All services aggregated, unless options contains the property "file", in which case only for that file
        Overrides:
        getNames in class MetaNamingService
        Parameters:
        options - NamingService-specific, can be null
        Returns:
        all known hostnames (matching the options if non-null) or empty Set if none; Returned Set is not necessarily sorted, implementation dependent