Package org.refcodes.rest
Class AbstractHttpDiscoverySidecar<B extends HttpDiscoverySidecar<B>>
- java.lang.Object
-
- org.refcodes.rest.AbstractHttpDiscoverySidecar<B>
-
- All Implemented Interfaces:
org.refcodes.component.Configurable<B>,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.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.LoadBalancingStrategyAccessor,org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyBuilder<B>,org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyMutator,org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyProperty,HttpDiscovery<B>,HttpDiscoverySidecar<B>,HttpDiscoveryUrlAccessor,HttpDiscoveryUrlAccessor.HttpDiscoveryUrlBuilder<B>,HttpDiscoveryUrlAccessor.HttpDiscoveryUrlMutator,HttpDiscoveryUrlAccessor.HttpDiscoveryUrlProperty,org.refcodes.security.TrustStoreDescriptorAccessor,org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<B>,org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorMutator,org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty
public abstract class AbstractHttpDiscoverySidecar<B extends HttpDiscoverySidecar<B>> extends java.lang.Object implements HttpDiscoverySidecar<B>
Abstract class for easily decorating aHttpRegistrySidecar.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.component.Configurable
org.refcodes.component.Configurable.ConfigureAutomaton<CTX extends java.lang.Object>, org.refcodes.component.Configurable.ConfigureBuilder<CTX extends java.lang.Object,B extends org.refcodes.component.Configurable.ConfigureBuilder<CTX,B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable
org.refcodes.component.Destroyable.DestroyAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.rest.HttpDiscoveryUrlAccessor
HttpDiscoveryUrlAccessor.HttpDiscoveryUrlBuilder<B extends HttpDiscoveryUrlAccessor.HttpDiscoveryUrlBuilder<B>>, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlMutator, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.Initializable
org.refcodes.component.Initializable.InitializeAutomaton, org.refcodes.component.Initializable.InitializeBuilder<B extends org.refcodes.component.Initializable.InitializeBuilder<B>>, org.refcodes.component.Initializable.UncheckedInitializable
-
Nested classes/interfaces inherited from interface org.refcodes.component.InitializedAccessor
org.refcodes.component.InitializedAccessor.InitializedMutator, org.refcodes.component.InitializedAccessor.InitializedProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.LifeCycleComponent
org.refcodes.component.LifeCycleComponent.LifeCycleAutomaton, org.refcodes.component.LifeCycleComponent.UncheckedLifeCycleComponent
-
Nested classes/interfaces inherited from interface org.refcodes.component.LifeCycleStatusAccessor
org.refcodes.component.LifeCycleStatusAccessor.LifeCycleStatusBuilder<B extends org.refcodes.component.LifeCycleStatusAccessor.LifeCycleStatusBuilder<B>>, org.refcodes.component.LifeCycleStatusAccessor.LifeCycleStatusMutator, org.refcodes.component.LifeCycleStatusAccessor.LifeCycleStatusProperty
-
Nested classes/interfaces inherited from interface org.refcodes.net.LoadBalancingStrategyAccessor
org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyBuilder<B extends org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyBuilder<B>>, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyMutator, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.Pausable
org.refcodes.component.Pausable.PauseAutomaton, org.refcodes.component.Pausable.PauseBuilder<B extends org.refcodes.component.Pausable.PauseBuilder<B>>, org.refcodes.component.Pausable.UncheckedPausable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Resumable
org.refcodes.component.Resumable.ResumeAutomaton, org.refcodes.component.Resumable.ResumeBuilder<B extends org.refcodes.component.Resumable.ResumeBuilder<B>>, org.refcodes.component.Resumable.UncheckedResumable
-
Nested classes/interfaces inherited from interface org.refcodes.component.RunningAccessor
org.refcodes.component.RunningAccessor.RunningMutator, org.refcodes.component.RunningAccessor.RunningProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.Startable
org.refcodes.component.Startable.StartAutomaton, org.refcodes.component.Startable.StartBuilder<B extends org.refcodes.component.Startable.StartBuilder<B>>, org.refcodes.component.Startable.UncheckedStartable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Stoppable
org.refcodes.component.Stoppable.StopAutomaton, org.refcodes.component.Stoppable.StopBuilder<B extends org.refcodes.component.Stoppable.StopBuilder<B>>, org.refcodes.component.Stoppable.UncheckedStoppable
-
Nested classes/interfaces inherited from interface org.refcodes.security.TrustStoreDescriptorAccessor
org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<B extends org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorBuilder<B>>, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorMutator, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty
-
-
Field Summary
Fields Modifier and Type Field Description protected org.refcodes.component.LifeCycleAutomatonImpl.ManualLifeCycleAutomatonImpl_lifeCycleAutomaton
-
Constructor Summary
Constructors Constructor Description AbstractHttpDiscoverySidecar()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Stops resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.org.refcodes.net.UrlgetHttpDiscoveryUrl()Retrieves the URL from the URL property locating the service discovery discovery.org.refcodes.component.LifeCycleStatusgetLifeCycleStatus()org.refcodes.net.LoadBalancingStrategygetLoadBalancingStrategy()org.refcodes.security.TrustStoreDescriptorgetTrustStoreDescriptor()voidinitialize()Initially fetches the list of available services and their accordingly associatedUrlfrom the discovery service.booleanisDestroyable()booleanisDestroyed()booleanisInitalizable()booleanisInitialized()booleanisPausable()booleanisPaused()booleanisResumable()booleanisRunning()booleanisStartable()booleanisStoppable()booleanisStopped()voidpause()Pauses the resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.voidresume()Resumes the resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.voidsetHttpDiscoveryUrl(org.refcodes.net.Url aUrl)Sets the URL for the URL property locating the service discovery discovery.voidsetLoadBalancingStrategy(org.refcodes.net.LoadBalancingStrategy aStrategy)voidsetTrustStoreDescriptor(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)voidstart()Starts resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.voidstop()Stops resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.protected static org.refcodes.net.UrltoHttpDiscoveryUrl(org.refcodes.net.Url aDiscoveryUrl, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.protected static org.refcodes.net.LoadBalancingStrategytoLoadBalancingStrategy(org.refcodes.net.LoadBalancingStrategy aStrategy, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.protected static org.refcodes.security.TrustStoreDescriptortoTrustStoreDescriptor(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.-
Methods inherited from interface org.refcodes.rest.HttpDiscovery
initialize, initialize, initialize, initialize, initialize, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, toUrl, withHttpDiscoveryUrl, withLoadBalancingStrategy
-
Methods inherited from interface org.refcodes.rest.HttpDiscoverySidecar
withTrustStoreDescriptor
-
-
-
-
Method Detail
-
isRunning
public boolean isRunning()
- Specified by:
isRunningin interfaceorg.refcodes.component.RunningAccessor
-
isInitialized
public boolean isInitialized()
- Specified by:
isInitializedin interfaceorg.refcodes.component.InitializedAccessor
-
getLifeCycleStatus
public org.refcodes.component.LifeCycleStatus getLifeCycleStatus()
- Specified by:
getLifeCycleStatusin interfaceorg.refcodes.component.LifeCycleStatusAccessor
-
pause
public void pause() throws org.refcodes.component.PauseExceptionPauses the resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.- Specified by:
pausein interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>- Specified by:
pausein interfaceorg.refcodes.component.Pausable- Throws:
org.refcodes.component.PauseException
-
stop
public void stop() throws org.refcodes.component.StopExceptionStops resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service. Does not update the list of available services and their accordingly associatedUrlfrom the discovery service. This may be achieved by canceling a scheduler.- Specified by:
stopin interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>- Specified by:
stopin interfaceorg.refcodes.component.Stoppable- Throws:
org.refcodes.component.StopException
-
start
public void start() throws org.refcodes.component.StartExceptionStarts resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service. Takes care to update the list of available services and their accordingly associatedUrlfrom the discovery service. This may be achieved by starting a scheduler. If necessary, the connection is opened.- Specified by:
startin interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>- Specified by:
startin interfaceorg.refcodes.component.Startable- Throws:
org.refcodes.component.StartException
-
resume
public void resume() throws org.refcodes.component.ResumeExceptionResumes the resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service.- Specified by:
resumein interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>- Specified by:
resumein interfaceorg.refcodes.component.Resumable- Throws:
org.refcodes.component.ResumeException
-
initialize
public void initialize() throws org.refcodes.component.InitializeExceptionInitially fetches the list of available services and their accordingly associatedUrlfrom the discovery service. Sets up the client according to the current client's state when invokingHttpDiscovery.initialize(Url, LoadBalancingStrategy, TrustStoreDescriptor).- Specified by:
initializein interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>- Specified by:
initializein interfaceorg.refcodes.component.Initializable- Throws:
org.refcodes.component.InitializeException
-
isStoppable
public boolean isStoppable()
- Specified by:
isStoppablein interfaceorg.refcodes.component.Stoppable.StopAutomaton
-
isPausable
public boolean isPausable()
- Specified by:
isPausablein interfaceorg.refcodes.component.Pausable.PauseAutomaton
-
isStartable
public boolean isStartable()
- Specified by:
isStartablein interfaceorg.refcodes.component.Startable.StartAutomaton
-
isResumable
public boolean isResumable()
- Specified by:
isResumablein interfaceorg.refcodes.component.Resumable.ResumeAutomaton
-
isStopped
public boolean isStopped()
- Specified by:
isStoppedin interfaceorg.refcodes.component.Stoppable.StopAutomaton
-
isPaused
public boolean isPaused()
- Specified by:
isPausedin interfaceorg.refcodes.component.Pausable.PauseAutomaton
-
isInitalizable
public boolean isInitalizable()
- Specified by:
isInitalizablein interfaceorg.refcodes.component.Initializable.InitializeAutomaton
-
destroy
public void destroy()
Stops resolving of the host part of anUrlfrom the list of available services and their accordingly associatedUrlas of the discovery service. Does not update the list of available services and their accordingly associatedUrlfrom the discovery service. This may be achieved by canceling a scheduler. Finally the connection is closed.- Specified by:
destroyin interfaceorg.refcodes.component.Destroyable- Specified by:
destroyin interfaceHttpDiscovery<B extends HttpDiscoverySidecar<B>>
-
isDestroyable
public boolean isDestroyable()
- Specified by:
isDestroyablein interfaceorg.refcodes.component.Destroyable.DestroyAutomaton
-
isDestroyed
public boolean isDestroyed()
- Specified by:
isDestroyedin interfaceorg.refcodes.component.Destroyable.DestroyAutomaton
-
getLoadBalancingStrategy
public org.refcodes.net.LoadBalancingStrategy getLoadBalancingStrategy()
- Specified by:
getLoadBalancingStrategyin interfaceorg.refcodes.net.LoadBalancingStrategyAccessor
-
setHttpDiscoveryUrl
public void setHttpDiscoveryUrl(org.refcodes.net.Url aUrl)
Sets the URL for the URL property locating the service discovery discovery.- Specified by:
setHttpDiscoveryUrlin interfaceHttpDiscoveryUrlAccessor.HttpDiscoveryUrlMutator- Parameters:
aUrl- The service discovery discovery URL to be stored by the URL property.
-
setLoadBalancingStrategy
public void setLoadBalancingStrategy(org.refcodes.net.LoadBalancingStrategy aStrategy)
- Specified by:
setLoadBalancingStrategyin interfaceorg.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyMutator
-
getTrustStoreDescriptor
public org.refcodes.security.TrustStoreDescriptor getTrustStoreDescriptor()
- Specified by:
getTrustStoreDescriptorin interfaceorg.refcodes.security.TrustStoreDescriptorAccessor
-
setTrustStoreDescriptor
public void setTrustStoreDescriptor(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor)
- Specified by:
setTrustStoreDescriptorin interfaceorg.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorMutator
-
getHttpDiscoveryUrl
public org.refcodes.net.Url getHttpDiscoveryUrl()
Retrieves the URL from the URL property locating the service discovery discovery.- Specified by:
getHttpDiscoveryUrlin interfaceHttpDiscoveryUrlAccessor- Returns:
- The URL stored by the URL property.
-
toLoadBalancingStrategy
protected static org.refcodes.net.LoadBalancingStrategy toLoadBalancingStrategy(org.refcodes.net.LoadBalancingStrategy aStrategy, org.refcodes.net.LoadBalancingStrategyAccessor.LoadBalancingStrategyProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.- Parameters:
aStrategy- The value to be used when not null.aProperty- The property to be used when the value is null and which is to be set when the value is not null.- Returns:
- The value when not null, else the value of the provided property.
-
toTrustStoreDescriptor
protected static org.refcodes.security.TrustStoreDescriptor toTrustStoreDescriptor(org.refcodes.security.TrustStoreDescriptor aStoreDescriptor, org.refcodes.security.TrustStoreDescriptorAccessor.TrustStoreDescriptorProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.- Parameters:
aStoreDescriptor- The value to be used when not null.aProperty- The property to be used when the value is null and which is to be set when the value is not null.- Returns:
- The value when not null, else the value of the provided property.
-
toHttpDiscoveryUrl
protected static org.refcodes.net.Url toHttpDiscoveryUrl(org.refcodes.net.Url aDiscoveryUrl, HttpDiscoveryUrlAccessor.HttpDiscoveryUrlProperty aProperty)Resolves the property from the provided value and the provided property and the and sets the property in case the provided value is not null.- Parameters:
aDiscoveryUrl- The value to be used when not null.aProperty- The property to be used when the value is null and which is to be set when the value is not null.- Returns:
- The value when not null, else the value of the provided property.
-
-