Class BasicAuthEndpointBuilderImpl

    • 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.net.HttpMethodAccessor

        org.refcodes.net.HttpMethodAccessor.HttpMethodBuilder<B extends org.refcodes.net.HttpMethodAccessor.HttpMethodBuilder<B>>, org.refcodes.net.HttpMethodAccessor.HttpMethodMutator, org.refcodes.net.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>>
    • Field Detail

      • _requestObserver

        protected org.refcodes.net.BasicAuthObserver _requestObserver
      • _httpMethod

        protected org.refcodes.net.HttpMethod _httpMethod
      • _locatorPattern

        protected String _locatorPattern
      • _connectionStatus

        protected org.refcodes.component.ConnectionStatus _connectionStatus
    • Method Detail

      • setLocatorPathPattern

        public 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 WildcardSubstitutes.getWildcardReplacement(String). For ease of use, a named wildcard with single asterisk ("*") such as "${arg1}=*" can be abbreviated as "${arg1}".
        Specified by:
        setLocatorPathPattern in interface BasicAuthEndpointBuilder
        Parameters:
        aLocatorPathPattern - the new locator pattern
      • setHttpMethod

        public void setHttpMethod​(org.refcodes.net.HttpMethod aHttpMethod)
        Specified by:
        setHttpMethod in interface org.refcodes.net.HttpMethodAccessor.HttpMethodMutator
      • setRequestObserver

        public void setRequestObserver​(org.refcodes.net.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.net.BasicAuthCredentials, String) method.
        Specified by:
        setRequestObserver in interface BasicAuthEndpointBuilder
        Parameters:
        aLambda - The (user defined) BasicAuthObserver to handle requests, feel free to code it as lambda expression!
      • getRequestObserver

        public org.refcodes.net.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.net.BasicAuthCredentials, String) method.
        Specified by:
        getRequestObserver in interface BasicAuthEndpointBuilder
        Returns:
        The (user defined) BasicAuthObserver to handle requests.
      • onBasicAuthRequest

        public org.refcodes.net.BasicAuthResponse onBasicAuthRequest​(InetSocketAddress aLocalAddress,
                                                                     InetSocketAddress aRemoteAddress,
                                                                     org.refcodes.net.HttpMethod aHttpMethod,
                                                                     String aLocator,
                                                                     org.refcodes.net.BasicAuthCredentials aCredentials,
                                                                     String aRealm)
        Specified by:
        onBasicAuthRequest in interface org.refcodes.net.BasicAuthObserver
      • getHttpMethod

        public org.refcodes.net.HttpMethod getHttpMethod​()
        Specified by:
        getHttpMethod in interface org.refcodes.net.HttpMethodAccessor
      • getLocatorPathPattern

        public String getLocatorPathPattern​()
        Retrieves the resource Locator-Pattern this endpoint has been registered to. The Locator-Pattern 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. 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 RestRequestEvent's method WildcardSubstitutes.getWildcardReplacements() inside the BasicAuthObserver.onBasicAuthRequest(java.net.InetSocketAddress, java.net.InetSocketAddress, HttpMethod, String, org.refcodes.net.BasicAuthCredentials, String) method. You may name a wildcard by prefixing it with "{someWildcardName}". For example a named wildcard may look as follows: "{arg1}*" or "{arg2}**" or "{arg3}?". The RestRequestEvent lets you access the wildcard substitutes either by index or by name.
        Specified by:
        getLocatorPathPattern in interface BasicAuthEndpoint
      • open

        public void open​()
                  throws org.refcodes.component.OpenException
        Specified by:
        open in interface org.refcodes.component.Openable
        Throws:
        org.refcodes.component.OpenException
      • close

        public void close​()
                   throws org.refcodes.component.CloseException
        Specified by:
        close in interface org.refcodes.component.Closable
        Throws:
        org.refcodes.component.CloseException
      • getConnectionStatus

        public org.refcodes.component.ConnectionStatus getConnectionStatus​()
        Specified by:
        getConnectionStatus in interface org.refcodes.component.ConnectionStatusAccessor