Interface BasicAuthEndpointBuilder

  • All Superinterfaces:
    BasicAuthEndpoint, org.refcodes.web.BasicAuthObserver, org.refcodes.component.Closable, org.refcodes.component.Closable.CloseBuilder<org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>>, org.refcodes.component.ConnectionStatusAccessor, org.refcodes.web.HttpMethodAccessor, org.refcodes.web.HttpMethodAccessor.HttpMethodBuilder<BasicAuthEndpointBuilder>, org.refcodes.web.HttpMethodAccessor.HttpMethodMutator, org.refcodes.web.HttpMethodAccessor.HttpMethodProperty, org.refcodes.component.LinkComponent, org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>, org.refcodes.component.Openable, org.refcodes.component.Openable.OpenBuilder<org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>>, org.refcodes.component.OpenedAccessor
    All Known Implementing Classes:
    BasicAuthEndpointBuilderImpl

    public interface BasicAuthEndpointBuilder
    extends BasicAuthEndpoint, org.refcodes.web.HttpMethodAccessor.HttpMethodProperty, org.refcodes.web.HttpMethodAccessor.HttpMethodBuilder<BasicAuthEndpointBuilder>, org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>, org.refcodes.component.ConnectionStatusAccessor
    A BasicAuthEndpointBuilder extends an BasicAuthEndpoint with builder functionality and adds lambda support for handling the requests addressed to this BasicAuthEndpoint. The lambda defined as BasicAuthObserver acts as the single listener to this BasicAuthEndpoint responsible for handling the requests for which this BasicAuthEndpoint is responsible. The locator for which an BasicAuthEndpointBuilder is responsible for is defined by the BasicAuthEndpointBuilder's Locator-Pattern: A single asterisk ("*") matches zero or more characters within a locator name. A double asterisk ("**") matches zero or more characters across directory levels. A question mark ("?") matches exactly one character within a locator name. The single asterisk ("*"), the double asterisk ("**") and the question mark ("?") we refer to as wildcard: You get an array with the substitutes of the wildcards using the method RestRequestEvent.getWildcardReplacements() . You may name a wildcard by prefixing it with "${someWildcardName}". For example a named wildcard may look as follows: "${arg1}=*" or "${arg2}=**" or "${arg3}=?". You can get the text substituting a named wildcard using the method RestRequestEvent.getWildcardReplacement(String). For ease of use, a named wildcard with single asterisk ("*") such as "${arg1}=*" can be abbreviated as "${arg1}".
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.refcodes.component.Closable

        org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionStatusAccessor

        org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusMutator, org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusProperty
      • Nested classes/interfaces inherited from interface org.refcodes.web.HttpMethodAccessor

        org.refcodes.web.HttpMethodAccessor.HttpMethodBuilder<B extends org.refcodes.web.HttpMethodAccessor.HttpMethodBuilder<B>>, org.refcodes.web.HttpMethodAccessor.HttpMethodMutator, org.refcodes.web.HttpMethodAccessor.HttpMethodProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.LinkComponent

        org.refcodes.component.LinkComponent.LinkAutomaton, org.refcodes.component.LinkComponent.LinkComponentBuilder<B extends org.refcodes.component.LinkComponent.LinkComponentBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.Openable

        org.refcodes.component.Openable.OpenAutomaton, org.refcodes.component.Openable.OpenBuilder<B extends org.refcodes.component.Openable.OpenBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.OpenedAccessor

        org.refcodes.component.OpenedAccessor.OpenedMutator, org.refcodes.component.OpenedAccessor.OpenedProperty
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      static BasicAuthEndpointBuilder build()
      This is a convenience method for easily instantiating the according builder.
      org.refcodes.web.BasicAuthObserver getRequestObserver()
      Retrieves the BasicAuthObserver to which any requests are delegated upon invocation of the BasicAuthObserver.onBasicAuthRequest(java.net.InetSocketAddress, java.net.InetSocketAddress, HttpMethod, String, org.refcodes.web.BasicAuthCredentials, String) method.
      void setLocatorPathPattern​(String aLocatorPathPattern)
      Sets the resource locator.
      void setRequestObserver​(org.refcodes.web.BasicAuthObserver aLambda)
      Sets the BasicAuthObserver to which any requests are delegated upon invocation of the BasicAuthObserver.onBasicAuthRequest(java.net.InetSocketAddress, java.net.InetSocketAddress, HttpMethod, String, org.refcodes.web.BasicAuthCredentials, String) method.
      default BasicAuthEndpointBuilder withClose()
      default BasicAuthEndpointBuilder withCloseIn​(int aCloseInMillis)
      default BasicAuthEndpointBuilder withCloseQuietly()
      default BasicAuthEndpointBuilder withHttpMethod​(org.refcodes.web.HttpMethod aHttpMethod)
      default BasicAuthEndpointBuilder withLocatorPathPattern​(String aLocatorPathPattern)
      Sets the resource locator as of the Builder-Pattern.
      default BasicAuthEndpointBuilder withOpen()
      default BasicAuthEndpointBuilder withRequestObserver​(org.refcodes.web.BasicAuthObserver aLambda)
      Builder method for setting the BasicAuthObserver.
      • Methods inherited from interface org.refcodes.web.BasicAuthObserver

        onBasicAuthRequest
      • Methods inherited from interface org.refcodes.component.Closable

        close, closeIn, closeQuietly, closeUnchecked
      • Methods inherited from interface org.refcodes.component.Closable.CloseBuilder

        withCloseUnchecked
      • Methods inherited from interface org.refcodes.component.ConnectionStatusAccessor

        getConnectionStatus, isOpened
      • Methods inherited from interface org.refcodes.web.HttpMethodAccessor

        getHttpMethod
      • Methods inherited from interface org.refcodes.web.HttpMethodAccessor.HttpMethodMutator

        setHttpMethod
      • Methods inherited from interface org.refcodes.web.HttpMethodAccessor.HttpMethodProperty

        letHttpMethod
      • Methods inherited from interface org.refcodes.component.Openable

        open, openUnchecked
      • Methods inherited from interface org.refcodes.component.Openable.OpenBuilder

        withOpenUnchecked
    • Method Detail

      • withLocatorPathPattern

        default BasicAuthEndpointBuilder withLocatorPathPattern​(String aLocatorPathPattern)
        Sets the resource locator as of the Builder-Pattern. The locator may contain wildcards as known from file-systems as follows: A single asterisk ("*") matches zero or more characters within a locator name. A double asterisk ("**") matches zero or more characters across directory levels. A question mark ("?") matches exactly one character within a locator name. You may name a wildcard by prefixing it with "${someWildcardName}". For example a named wildcard may look as follows: "${arg1}=*" or "${arg2}=**" or "${arg3}=?". You can get the text substituting a named wildcard using the method RestRequestEvent.getWildcardReplacement(String). For ease of use, a named wildcard with single asterisk ("*") such as "${arg1}=*" can be abbreviated as "${arg1}".
        Parameters:
        aLocatorPathPattern - the locator pattern
        Returns:
        The BasicAuthEndpoint builder to continue configuration (as of the Builder-Pattern).
      • setLocatorPathPattern

        void setLocatorPathPattern​(String aLocatorPathPattern)
        Sets the resource locator. The locator may contain wildcards as known from file-systems as follows: A single asterisk ("*") matches zero or more characters within a locator name. A double asterisk ("**") matches zero or more characters across directory levels. A question mark ("?") matches exactly one character within a locator name. You may name a wildcard by prefixing it with "${someWildcardName}". For example a named wildcard may look as follows: "${arg1}=*" or "${arg2}=**" or "${arg3}=?". You can get the text substituting a named wildcard using the method RestRequestEvent.getWildcardReplacement(String). For ease of use, a named wildcard with single asterisk ("*") such as "${arg1}=*" can be abbreviated as "${arg1}".
        Parameters:
        aLocatorPathPattern - the new locator pattern
      • getRequestObserver

        org.refcodes.web.BasicAuthObserver getRequestObserver()
        Retrieves the BasicAuthObserver to which any requests are delegated upon invocation of the BasicAuthObserver.onBasicAuthRequest(java.net.InetSocketAddress, java.net.InetSocketAddress, HttpMethod, String, org.refcodes.web.BasicAuthCredentials, String) method.
        Returns:
        The (user defined) BasicAuthObserver to handle requests.
      • setRequestObserver

        void setRequestObserver​(org.refcodes.web.BasicAuthObserver aLambda)
        Sets the BasicAuthObserver to which any requests are delegated upon invocation of the BasicAuthObserver.onBasicAuthRequest(java.net.InetSocketAddress, java.net.InetSocketAddress, HttpMethod, String, org.refcodes.web.BasicAuthCredentials, String) method.
        Parameters:
        aLambda - The (user defined) BasicAuthObserver to handle requests, feel free to code it as lambda expression!
      • withRequestObserver

        default BasicAuthEndpointBuilder withRequestObserver​(org.refcodes.web.BasicAuthObserver aLambda)
        Builder method for setting the BasicAuthObserver.
        Parameters:
        aLambda - The (user defined) BasicAuthObserver to handle requests, feel free to code it as lambda expression
        Returns:
        The BasicAuthEndpointBuilder for the sake of a fluent API.
      • withCloseQuietly

        default BasicAuthEndpointBuilder withCloseQuietly()
        Specified by:
        withCloseQuietly in interface org.refcodes.component.Closable.CloseBuilder<org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>>
      • withCloseIn

        default BasicAuthEndpointBuilder withCloseIn​(int aCloseInMillis)
        Specified by:
        withCloseIn in interface org.refcodes.component.Closable.CloseBuilder<org.refcodes.component.LinkComponent.LinkComponentBuilder<BasicAuthEndpointBuilder>>
      • build

        static BasicAuthEndpointBuilder build()
        This is a convenience method for easily instantiating the according builder.
        Returns:
        an instance (using a default implementation) of this builder