Class HostsFileParser


  • public final class HostsFileParser
    extends java.lang.Object
    A parser for hosts files.
    • Field Detail

      • WINDOWS_DEFAULT_SYSTEM_ROOT

        private static final java.lang.String WINDOWS_DEFAULT_SYSTEM_ROOT
        See Also:
        Constant Field Values
      • WINDOWS_HOSTS_FILE_RELATIVE_PATH

        private static final java.lang.String WINDOWS_HOSTS_FILE_RELATIVE_PATH
        See Also:
        Constant Field Values
      • X_PLATFORMS_HOSTS_FILE_PATH

        private static final java.lang.String X_PLATFORMS_HOSTS_FILE_PATH
        See Also:
        Constant Field Values
      • WHITESPACES

        private static final java.util.regex.Pattern WHITESPACES
    • Constructor Detail

      • HostsFileParser

        private HostsFileParser()
        Can't be instantiated.
    • Method Detail

      • locateHostsFile

        private static java.io.File locateHostsFile()
      • parseSilently

        public static HostsFileEntries parseSilently()
        Parse hosts file at standard OS location using the systems default Charset for decoding.
        Returns:
        a HostsFileEntries
      • parseSilently

        public static HostsFileEntries parseSilently​(java.nio.charset.Charset... charsets)
        Parse hosts file at standard OS location using the given Charsets one after each other until we were able to parse something or none is left.
        Parameters:
        charsets - the Charsets to try as file encodings when parsing.
        Returns:
        a HostsFileEntries
      • parse

        public static HostsFileEntries parse()
                                      throws java.io.IOException
        Parse hosts file at standard OS location using the system default Charset for decoding.
        Returns:
        a HostsFileEntries
        Throws:
        java.io.IOException - file could not be read
      • parse

        public static HostsFileEntries parse​(java.io.File file)
                                      throws java.io.IOException
        Parse a hosts file using the system default Charset for decoding.
        Parameters:
        file - the file to be parsed
        Returns:
        a HostsFileEntries
        Throws:
        java.io.IOException - file could not be read
      • parse

        public static HostsFileEntries parse​(java.io.File file,
                                             java.nio.charset.Charset... charsets)
                                      throws java.io.IOException
        Parse a hosts file.
        Parameters:
        file - the file to be parsed
        charsets - the Charsets to try as file encodings when parsing.
        Returns:
        a HostsFileEntries
        Throws:
        java.io.IOException - file could not be read
      • parse

        public static HostsFileEntries parse​(java.io.Reader reader)
                                      throws java.io.IOException
        Parse a reader of hosts file format.
        Parameters:
        reader - the file to be parsed
        Returns:
        a HostsFileEntries
        Throws:
        java.io.IOException - file could not be read