Class MasterComponent

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultComponent
org.apache.camel.component.master.MasterComponent
All Implemented Interfaces:
AutoCloseable, org.apache.camel.CamelContextAware, org.apache.camel.Component, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.HasCamelContext, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

@Component("master") public class MasterComponent extends org.apache.camel.support.DefaultComponent
The master camel component provides a way to ensures that only a single endpoint in a cluster is active at any point in time with automatic failover if the JVM dies or the leadership is lot for any reason.

This feature is useful if you need to consume from a backend that does not support concurrent consumption.

  • Field Summary

    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
     
    MasterComponent(org.apache.camel.CamelContext context)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected org.apache.camel.Endpoint
    createEndpoint(String uri, String remaining, Map<String,Object> params)
     
    protected void
     
    long
     
    int
     
    org.apache.camel.cluster.CamelClusterService
     
    org.apache.camel.cluster.CamelClusterService.Selector
     
    void
    setBackOffDelay(long backOffDelay)
    When the master becomes leader then backoff is in use to repeat starting the consumer until the consumer is successfully started or max attempts reached.
    void
    setBackOffMaxAttempts(int backOffMaxAttempts)
    When the master becomes leader then backoff is in use to repeat starting the consumer until the consumer is successfully started or max attempts reached.
    void
    setService(org.apache.camel.cluster.CamelClusterService service)
    Inject the service to use.
    void
    setServiceSelector(org.apache.camel.cluster.CamelClusterService.Selector serviceSelector)
    Inject the service selector used to lookup the CamelClusterService to use.
    boolean
     

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

    afterConfiguration, createEndpoint, createEndpoint, doBuild, getAndRemoveOrResolveReferenceParameter, getAndRemoveOrResolveReferenceParameter, getAndRemoveParameter, getAndRemoveParameter, getCamelContext, getComponentPropertyConfigurer, getDefaultName, getEndpointPropertyConfigurer, getExtension, getSupportedExtensions, ifStartsWithReturnRemainder, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, registerExtension, registerExtension, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceParameter, resolveAndRemoveReferenceParameter, resolveRawParameterValues, setAutowiredEnabled, setBridgeErrorHandler, setCamelContext, setLazyStartProducer, setProperties, setProperties, setProperties, useIntrospectionOnEndpoint, validateParameters, validateURI

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

    build, doFail, doLifecycleChange, doResume, doShutdown, doStart, doStop, doSuspend, fail, getInternalLock, 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, toString, wait, wait, wait

    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

    • MasterComponent

      public MasterComponent()
    • MasterComponent

      public MasterComponent(org.apache.camel.CamelContext context)
  • Method Details

    • createEndpoint

      protected org.apache.camel.Endpoint createEndpoint(String uri, String remaining, Map<String,Object> params) throws Exception
      Specified by:
      createEndpoint in class org.apache.camel.support.DefaultComponent
      Throws:
      Exception
    • useRawUri

      public boolean useRawUri()
      Specified by:
      useRawUri in interface org.apache.camel.Component
      Overrides:
      useRawUri in class org.apache.camel.support.DefaultComponent
    • getService

      public org.apache.camel.cluster.CamelClusterService getService()
    • setService

      public void setService(org.apache.camel.cluster.CamelClusterService service)
      Inject the service to use.
    • getServiceSelector

      public org.apache.camel.cluster.CamelClusterService.Selector getServiceSelector()
    • setServiceSelector

      public void setServiceSelector(org.apache.camel.cluster.CamelClusterService.Selector serviceSelector)
      Inject the service selector used to lookup the CamelClusterService to use.
    • getBackOffDelay

      public long getBackOffDelay()
    • setBackOffDelay

      public void setBackOffDelay(long backOffDelay)
      When the master becomes leader then backoff is in use to repeat starting the consumer until the consumer is successfully started or max attempts reached. This option is the delay in millis between start attempts.
    • getBackOffMaxAttempts

      public int getBackOffMaxAttempts()
    • setBackOffMaxAttempts

      public void setBackOffMaxAttempts(int backOffMaxAttempts)
      When the master becomes leader then backoff is in use to repeat starting the consumer until the consumer is successfully started or max attempts reached. This option is the maximum number of attempts to try.
    • doInit

      protected void doInit() throws Exception
      Overrides:
      doInit in class org.apache.camel.support.DefaultComponent
      Throws:
      Exception