Class WeightedRandomLoadBalancer

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
All Implemented Interfaces:
AutoCloseable, org.apache.camel.AsyncProcessor, org.apache.camel.Navigate<org.apache.camel.Processor>, org.apache.camel.Processor, LoadBalancer, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.HasId, org.apache.camel.spi.IdAware, org.apache.camel.spi.RouteIdAware, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

public class WeightedRandomLoadBalancer extends WeightedLoadBalancer
  • Field Summary

    Fields inherited from class org.apache.camel.processor.loadbalancer.WeightedLoadBalancer

    distributionRatioSum, ratios, runtimeRatioSum

    Fields inherited from class org.apache.camel.support.service.BaseService

    BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING
  • Constructor Summary

    Constructors
    Constructor
    Description
    WeightedRandomLoadBalancer(List<Integer> distributionRatioList)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected org.apache.camel.AsyncProcessor
    chooseProcessor(org.apache.camel.AsyncProcessor[] processors, org.apache.camel.Exchange exchange)
     

    Methods inherited from class org.apache.camel.processor.loadbalancer.WeightedLoadBalancer

    decrementSum, doStart, getLastChosenProcessorIndex, getRatios, reset

    Methods inherited from class org.apache.camel.processor.loadbalancer.QueueLoadBalancer

    process

    Methods inherited from class org.apache.camel.processor.loadbalancer.LoadBalancerSupport

    addProcessor, doGetProcessors, doInit, doShutdown, doStop, getId, getProcessors, getRouteId, hasNext, next, removeProcessor, setId, setRouteId, toString

    Methods inherited from class org.apache.camel.support.AsyncProcessorSupport

    process, processAsync

    Methods inherited from class org.apache.camel.support.service.BaseService

    build, doBuild, doFail, doLifecycleChange, doResume, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.camel.AsyncProcessor

    processAsync

    Methods inherited from interface org.apache.camel.spi.IdAware

    setGeneratedId

    Methods inherited from interface org.apache.camel.Processor

    process

    Methods inherited from interface org.apache.camel.Service

    build, close, init, start, stop

    Methods inherited from interface org.apache.camel.ShutdownableService

    shutdown

    Methods inherited from interface org.apache.camel.StatefulService

    getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspending

    Methods inherited from interface org.apache.camel.SuspendableService

    isSuspended, resume, suspend
  • Constructor Details

    • WeightedRandomLoadBalancer

      public WeightedRandomLoadBalancer(List<Integer> distributionRatioList)
  • Method Details

    • chooseProcessor

      protected org.apache.camel.AsyncProcessor chooseProcessor(org.apache.camel.AsyncProcessor[] processors, org.apache.camel.Exchange exchange)
      Specified by:
      chooseProcessor in class QueueLoadBalancer