public abstract class LoadBalancerSupport extends ServiceSupport implements LoadBalancer, Navigate<Processor>
LoadBalancer
implementation.
This implementation is dedicated for asynchronous load balancers.
Consider using the SimpleLoadBalancerSupport
if your load balancer does not by nature
support asynchronous routing.Modifier and Type | Field and Description |
---|---|
protected org.slf4j.Logger |
log |
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
Constructor and Description |
---|
LoadBalancerSupport() |
Modifier and Type | Method and Description |
---|---|
void |
addProcessor(Processor processor)
Adds a new processor to the load balancer
|
protected void |
doShutdown()
Implementations override this method to perform customized shutdown.
|
protected void |
doStart()
Implementations override this method to support customized start/stop.
|
protected void |
doStop()
Implementations override this method to support customized start/stop.
|
List<Processor> |
getProcessors()
Returns the current processors available to this load balancer
|
boolean |
hasNext()
Are there more outputs?
|
List<Processor> |
next()
Next group of outputs
|
void |
process(Exchange exchange)
Processes the message exchange
|
void |
removeProcessor(Processor processor)
Removes the given processor from the load balancer
|
doResume, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, resume, shutdown, start, stop, suspend
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
process
protected final org.slf4j.Logger log
public LoadBalancerSupport()
public void addProcessor(Processor processor)
LoadBalancer
addProcessor
in interface LoadBalancer
processor
- the processor to be added to the load balancerpublic void removeProcessor(Processor processor)
LoadBalancer
removeProcessor
in interface LoadBalancer
processor
- the processor to be removed from the load balancerpublic List<Processor> getProcessors()
LoadBalancer
getProcessors
in interface LoadBalancer
public List<Processor> next()
Navigate
public boolean hasNext()
Navigate
protected void doStart() throws Exception
ServiceSupport
ServiceSupport.doStop()
for more details.doStart
in class ServiceSupport
Exception
ServiceSupport.doStop()
protected void doStop() throws Exception
ServiceSupport
ServiceSupport.doStop()
method when
the service is being stopped. This method will also be invoked
if the service is still in uninitialized state (eg has not
been started). The method is always called to allow the service
to do custom logic when the service is being stopped, such as when
CamelContext
is shutting down.doStop
in class ServiceSupport
Exception
ServiceSupport.doStart()
protected void doShutdown() throws Exception
ServiceSupport
doShutdown
in class ServiceSupport
Exception
Apache Camel