Class HttpServerProvider



  • public abstract class HttpServerProvider
    extends Object
    Service provider class for HttpServer. Sub-classes of HttpServerProvider provide an implementation of HttpServer and associated classes. Applications do not normally use this class. See provider() for how providers are found and loaded.
    • Constructor Detail

      • HttpServerProvider

        protected HttpServerProvider​()
        Initializes a new instance of this class.
        Throws:
        SecurityException - If a security manager has been installed and it denies RuntimePermission("httpServerProvider")
    • Method Detail

      • createHttpServer

        public abstract HttpServer createHttpServer​(InetSocketAddress addr,
                                                    int backlog)
                                             throws IOException
        creates a HttpServer from this provider
        Parameters:
        addr - the address to bind to. May be null
        backlog - the socket backlog. A value of zero means the systems default
        Throws:
        IOException
      • createHttpsServer

        public abstract HttpsServer createHttpsServer​(InetSocketAddress addr,
                                                      int backlog)
                                               throws IOException
        creates a HttpsServer from this provider
        Parameters:
        addr - the address to bind to. May be null
        backlog - the socket backlog. A value of zero means the systems default
        Throws:
        IOException
      • provider

        public static HttpServerProvider provider​()
        Returns the system wide default HttpServerProvider for this invocation of the Java virtual machine.

        The first invocation of this method locates the default provider object as follows:

        1. If the system property com.sun.net.httpserver.HttpServerProvider is defined then it is taken to be the fully-qualified name of a concrete provider class. The class is loaded and instantiated; if this process fails then an unspecified unchecked error or exception is thrown.

        2. If a provider class has been installed in a jar file that is visible to the system class loader, and that jar file contains a provider-configuration file named com.sun.net.httpserver.HttpServerProvider in the resource directory META-INF/services, then the first class name specified in that file is taken. The class is loaded and instantiated; if this process fails then an unspecified unchecked error or exception is thrown.

        3. Finally, if no provider has been specified by any of the above means then the system-default provider class is instantiated and the result is returned.

        Subsequent invocations of this method return the provider that was returned by the first invocation.

        Returns:
        The system-wide default HttpServerProvider