Package jakarta.ws.rs

Interface SeBootstrap.Configuration

  • Enclosing interface:
    SeBootstrap

    public static interface SeBootstrap.Configuration
    Provides information needed by the JAX-RS implementation for bootstrapping an application.

    The configuration essentially consists of a set of parameters. While the set of actually effective keys is product specific, the key constants defined by the SeBootstrap.Configuration interface MUST be effective on all compliant products. Any unknown key MUST be silently ignored.

    Since:
    3.1
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int DEFAULT_PORT
      Special value for PORT property indicating that the implementation MUST use its default port.
      static int FREE_PORT
      Special value for PORT property indicating that the implementation MUST scan for a free port.
      static java.lang.String HOST
      Configuration key for the hostname or IP address an application is bound to.
      static java.lang.String PORT
      Configuration key for the TCP port an application is bound to.
      static java.lang.String PROTOCOL
      Configuration key for the protocol an application is bound to.
      static java.lang.String ROOT_PATH
      Configuration key for the root path an application is bound to.
      static java.lang.String SSL_CLIENT_AUTHENTICATION
      Configuration key for the secure socket client authentication policy.
      static java.lang.String SSL_CONTEXT
      Configuration key for the secure socket configuration to be used.
    • Field Detail

      • PROTOCOL

        static final java.lang.String PROTOCOL
        Configuration key for the protocol an application is bound to.

        A compliant implementation at least MUST accept the strings "HTTP" and "HTTPS" if these protocols are supported.

        The default value is "HTTP".

        Since:
        3.1
        See Also:
        Constant Field Values
      • HOST

        static final java.lang.String HOST
        Configuration key for the hostname or IP address an application is bound to.

        A compliant implementation at least MUST accept string values bearing hostnames, IP4 address text representations, and IP6 address text representations. If a hostname string, the special IP4 address string "0.0.0.0" or "::" for IP6 is provided, the application MUST be bound to all IP addresses assigned to that hostname. If the hostname string is "localhost" the application MUST be bound to the local host's loopback adapter only.

        The default value is "localhost".

        Since:
        3.1
        See Also:
        Constant Field Values
      • PORT

        static final java.lang.String PORT
        Configuration key for the TCP port an application is bound to.

        A compliant implementation MUST accept java.lang.Integer values.

        There is no default port mandated by this specification, but the default value of this property is DEFAULT_PORT (i. e. -1). A compliant implementation MUST use its own default port when the value -1 is provided, and MAY apply (but is not obligated to) auto-selection and range-scanning algorithms.

        Since:
        3.1
        See Also:
        Constant Field Values
      • ROOT_PATH

        static final java.lang.String ROOT_PATH
        Configuration key for the root path an application is bound to.

        The default value is "/".

        Since:
        3.1
        See Also:
        Constant Field Values
      • SSL_CONTEXT

        static final java.lang.String SSL_CONTEXT
        Configuration key for the secure socket configuration to be used.

        The default value is SSLContext.getDefault().

        Since:
        3.1
        See Also:
        Constant Field Values
      • FREE_PORT

        static final int FREE_PORT
        Special value for PORT property indicating that the implementation MUST scan for a free port.
        Since:
        3.1
        See Also:
        Constant Field Values
      • DEFAULT_PORT

        static final int DEFAULT_PORT
        Special value for PORT property indicating that the implementation MUST use its default port.
        Since:
        3.1
        See Also:
        Constant Field Values
    • Method Detail

      • property

        java.lang.Object property​(java.lang.String name)
        Returns the value of the property with the given name, or null if there is no property of that name.
        Parameters:
        name - a String specifying the name of the property.
        Returns:
        an Object containing the value of the property, or null if no property exists matching the given name.
        Since:
        3.1
      • hasProperty

        default boolean hasProperty​(java.lang.String name)
        Returns whether the property with the given name is configured, either explicitly or by default.
        Parameters:
        name - a String specifying the name of the property.
        Returns:
        false if no property exists matching the given name, true otherwise.
        Since:
        3.1
      • protocol

        default java.lang.String protocol()
        Convenience method to get the protocol to be used.

        Same as if calling (String) property(PROTOCOL).

        Returns:
        protocol to be used (e. g. "HTTP").
        Throws:
        java.lang.ClassCastException - if protocol is not a String.
        Since:
        3.1
        See Also:
        PROTOCOL
      • host

        default java.lang.String host()
        Convenience method to get the host to be used.

        Same as if calling (String) property(HOST).

        Returns:
        host name or IP address to be used (e. g. "localhost" or "0.0.0.0").
        Throws:
        java.lang.ClassCastException - if host is not a String.
        Since:
        3.1
        See Also:
        HOST
      • port

        default int port()
        Convenience method to get the actually used port.

        Same as if calling (int) property(PORT).

        If the port was not explicitly given, this will return the port chosen implicitly by the JAX-RS implementation.

        Returns:
        port number actually used (e. g. 8080).
        Throws:
        java.lang.ClassCastException - if port is not an Integer.
        Since:
        3.1
        See Also:
        PORT
      • rootPath

        default java.lang.String rootPath()
        Convenience method to get the rootPath to be used.

        Same as if calling (String) property(ROOT_PATH).

        Returns:
        root path to be used, e.g. "/".
        Throws:
        java.lang.ClassCastException - if root path is not a String.
        Since:
        3.1
        See Also:
        ROOT_PATH
      • sslContext

        default javax.net.ssl.SSLContext sslContext()
        Convenience method to get the sslContext to be used.

        Same as if calling (SSLContext) property(SSL_CONTEXT).

        Returns:
        root path to be used, e. g. "/".
        Throws:
        java.lang.ClassCastException - if sslContext is not a SSLContext.
        Since:
        3.1
        See Also:
        SSL_CONTEXT
      • baseUriBuilder

        default UriBuilder baseUriBuilder()
        Returns a UriBuilder that includes the application root path.
        Returns:
        a UriBuilder for the application.
        Since:
        3.1
      • baseUri

        default java.net.URI baseUri()
        Convenience method that returns a built the URI for the application.
        Returns:
        a built URI for the application.
        Since:
        3.1
        See Also:
        baseUriBuilder()