Class AbstractHttpDiscoveryRestClientDecorator<B extends HttpDiscoveryRestClient<B>>

  • All Implemented Interfaces:
    org.refcodes.component.Closable, org.refcodes.component.Configurable<B>, org.refcodes.component.ConnectionComponent<B>, org.refcodes.component.ConnectionOpenable<B>, org.refcodes.component.ConnectionStatusAccessor, org.refcodes.component.Destroyable, org.refcodes.component.Destroyable.DestroyAutomaton, org.refcodes.component.Initializable, org.refcodes.component.Initializable.InitializeAutomaton, org.refcodes.component.InitializedAccessor, org.refcodes.component.LifeCycleComponent, org.refcodes.component.LifeCycleComponent.LifeCycleAutomaton, org.refcodes.component.LifeCycleStatusAccessor, org.refcodes.component.LinkComponent, org.refcodes.component.Openable, org.refcodes.component.Pausable, org.refcodes.component.Pausable.PauseAutomaton, org.refcodes.component.Resumable, org.refcodes.component.Resumable.ResumeAutomaton, org.refcodes.component.RunningAccessor, org.refcodes.component.Startable, org.refcodes.component.Startable.StartAutomaton, org.refcodes.component.Stoppable, org.refcodes.component.Stoppable.StopAutomaton, org.refcodes.net.BaseUrlAccessor, org.refcodes.net.BaseUrlAccessor.BaseUrlBuilder<B>, org.refcodes.net.BaseUrlAccessor.BaseUrlMutator, org.refcodes.net.BaseUrlAccessor.BaseUrlProperty, org.refcodes.net.LoadBalancingStrategyAccessor, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyBuilder<B>, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyMutator, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyProperty, org.refcodes.net.MediaTypeFactoryLookup, org.refcodes.net.MediaTypeFactoryLookup.MutableMediaTypeFactoryLookup, org.refcodes.net.OauthTokenAccessor, org.refcodes.net.OauthTokenAccessor.OauthTokenBuilder<B>, org.refcodes.net.OauthTokenAccessor.OauthTokenMutator, org.refcodes.net.OauthTokenAccessor.OauthTokenProperty, org.refcodes.net.UserAgentAccessor, org.refcodes.net.UserAgentAccessor.UserAgentBuilder<B>, org.refcodes.net.UserAgentAccessor.UserAgentMutator, org.refcodes.net.UserAgentAccessor.UserAgentProperty, HttpDiscovery<B>, HttpDiscoveryRestClient<B>, HttpDiscoveryUrlAccessor, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlBuilder<B>, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlMutator, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlProperty, HttpRestClient, RestClient, RestDeleteClient, RestGetClient, RestPostClient, RestPutClient, RestRequestClient, org.refcodes.runtime.RequestCorrelation<B>, org.refcodes.runtime.SessionCorrelation<B>, org.refcodes.security.TrustStoreDescriptorAccessor, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<B>, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorMutator, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty


    public abstract class AbstractHttpDiscoveryRestClientDecorator<B extends HttpDiscoveryRestClient<B>>
    extends AbstractHttpRestClientDecorator<B>
    implements HttpDiscoveryRestClient<B>
    Abstract class for easily decorating a HttpDiscoveryRestClient.
    • Field Detail

      • _lifeCycleAutomaton

        protected org.refcodes.component.LifeCycleAutomatonImpl.ManualLifeCycleAutomatonImpl _lifeCycleAutomaton
    • Constructor Detail

      • AbstractHttpDiscoveryRestClientDecorator

        public AbstractHttpDiscoveryRestClientDecorator​(HttpRestClient aClient)
        Decorates the given HttpRestClient with discovery functionality.
        Parameters:
        aClient - The HttpRestClient to be decorated.
    • Method Detail

      • isRunning

        public boolean isRunning​()
        Specified by:
        isRunning in interface org.refcodes.component.RunningAccessor
      • isInitialized

        public boolean isInitialized​()
        Specified by:
        isInitialized in interface org.refcodes.component.InitializedAccessor
      • getLifeCycleStatus

        public org.refcodes.component.LifeCycleStatus getLifeCycleStatus​()
        Specified by:
        getLifeCycleStatus in interface org.refcodes.component.LifeCycleStatusAccessor
      • pause

        public void pause​()
                   throws org.refcodes.component.PauseException
        Pauses the resolving of the host part of an Url from the list of available services and their accordingly associated Url as of the discovery service.
        Specified by:
        pause in interface HttpDiscovery<B extends HttpDiscoveryRestClient<B>>
        Specified by:
        pause in interface org.refcodes.component.Pausable
        Throws:
        org.refcodes.component.PauseException
      • stop

        public void stop​()
                  throws org.refcodes.component.StopException
        Stops resolving of the host part of an Url from the list of available services and their accordingly associated Url as of the discovery service. Does not update the list of available services and their accordingly associated Url from the discovery service. This may be achieved by canceling a scheduler.
        Specified by:
        stop in interface HttpDiscovery<B extends HttpDiscoveryRestClient<B>>
        Specified by:
        stop in interface org.refcodes.component.Stoppable
        Throws:
        org.refcodes.component.StopException
      • start

        public void start​()
                   throws org.refcodes.component.StartException
        Starts resolving of the host part of an Url from the list of available services and their accordingly associated Url as of the discovery service. Takes care to update the list of available services and their accordingly associated Url from the discovery service. This may be achieved by starting a scheduler. If necessary, the connection is opened.
        Specified by:
        start in interface HttpDiscovery<B extends HttpDiscoveryRestClient<B>>
        Specified by:
        start in interface org.refcodes.component.Startable
        Throws:
        org.refcodes.component.StartException
      • resume

        public void resume​()
                    throws org.refcodes.component.ResumeException
        Resumes the resolving of the host part of an Url from the list of available services and their accordingly associated Url as of the discovery service.
        Specified by:
        resume in interface HttpDiscovery<B extends HttpDiscoveryRestClient<B>>
        Specified by:
        resume in interface org.refcodes.component.Resumable
        Throws:
        org.refcodes.component.ResumeException
      • isStoppable

        public boolean isStoppable​()
        Specified by:
        isStoppable in interface org.refcodes.component.Stoppable.StopAutomaton
      • isPausable

        public boolean isPausable​()
        Specified by:
        isPausable in interface org.refcodes.component.Pausable.PauseAutomaton
      • isStartable

        public boolean isStartable​()
        Specified by:
        isStartable in interface org.refcodes.component.Startable.StartAutomaton
      • isResumable

        public boolean isResumable​()
        Specified by:
        isResumable in interface org.refcodes.component.Resumable.ResumeAutomaton
      • isStopped

        public boolean isStopped​()
        Specified by:
        isStopped in interface org.refcodes.component.Stoppable.StopAutomaton
      • isPaused

        public boolean isPaused​()
        Specified by:
        isPaused in interface org.refcodes.component.Pausable.PauseAutomaton
      • isInitalizable

        public boolean isInitalizable​()
        Specified by:
        isInitalizable in interface org.refcodes.component.Initializable.InitializeAutomaton
      • destroy

        public void destroy​()
        Stops resolving of the host part of an Url from the list of available services and their accordingly associated Url as of the discovery service. Does not update the list of available services and their accordingly associated Url from the discovery service. This may be achieved by canceling a scheduler. Finally the connection is closed.
        Specified by:
        destroy in interface org.refcodes.component.Destroyable
        Specified by:
        destroy in interface HttpDiscovery<B extends HttpDiscoveryRestClient<B>>
      • isDestroyable

        public boolean isDestroyable​()
        Specified by:
        isDestroyable in interface org.refcodes.component.Destroyable.DestroyAutomaton
      • isDestroyed

        public boolean isDestroyed​()
        Specified by:
        isDestroyed in interface org.refcodes.component.Destroyable.DestroyAutomaton
      • setLoadBalancingStrategy

        public void setLoadBalancingStrategy​(org.refcodes.net.LoadBalancingStrategy aStrategy)
        Specified by:
        setLoadBalancingStrategy in interface org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyMutator
      • getLoadBalancingStrategy

        public org.refcodes.net.LoadBalancingStrategy getLoadBalancingStrategy​()
        Specified by:
        getLoadBalancingStrategy in interface org.refcodes.net.LoadBalancingStrategyAccessor
      • getHttpDiscoveryUrl

        public org.refcodes.net.Url getHttpDiscoveryUrl​()
        Retrieves the URL from the URL property locating the service discovery discovery.
        Specified by:
        getHttpDiscoveryUrl in interface HttpDiscoveryUrlAccessor
        Returns:
        The URL stored by the URL property.
      • setHttpDiscoveryUrl

        public void setHttpDiscoveryUrl​(org.refcodes.net.Url aUrl)
        Sets the URL for the URL property locating the service discovery discovery.
        Specified by:
        setHttpDiscoveryUrl in interface HttpDiscoveryUrlAccessor.HttpDiscoveryUrlMutator
        Parameters:
        aUrl - The service discovery discovery URL to be stored by the URL property.
      • toTrustStoreDescriptor

        protected org.refcodes.security.TrustStoreDescriptor toTrustStoreDescriptor​(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)
      • toHttpDiscoveryUrl

        protected org.refcodes.net.Url toHttpDiscoveryUrl​(org.refcodes.net.Url aDiscoveryUrl)
      • toLoadBalancerStrategy

        protected org.refcodes.net.LoadBalancingStrategy toLoadBalancerStrategy​(org.refcodes.net.LoadBalancingStrategy aStrategy)