Class NettyComponent

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultComponent
org.apache.camel.component.netty.NettyComponent
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.SSLContextParametersAware, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

@Component("netty") public class NettyComponent extends org.apache.camel.support.DefaultComponent implements org.apache.camel.SSLContextParametersAware
  • 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
     
    NettyComponent(Class<? extends org.apache.camel.Endpoint> endpointClass)
     
    NettyComponent(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> parameters)
     
    protected void
     
    protected void
     
     
    io.netty.util.concurrent.EventExecutorGroup
     
    int
     
    boolean
     
    parseConfiguration(NettyConfiguration configuration, String remaining, Map<String,Object> parameters)
    Parses the configuration
    void
    To use the NettyConfiguration as configuration when creating endpoints.
    void
    setExecutorService(io.netty.util.concurrent.EventExecutorGroup executorService)
    To use the given EventExecutorGroup.
    void
    setMaximumPoolSize(int maximumPoolSize)
    Sets a maximum thread pool size for the netty consumer ordered thread pool.
    void
    setUseGlobalSslContextParameters(boolean useGlobalSslContextParameters)
    Enable usage of global SSL context parameters.

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

    afterConfiguration, createEndpoint, createEndpoint, doBuild, doInit, 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, useRawUri, validateParameters, validateURI

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

    build, doFail, doLifecycleChange, doResume, doShutdown, 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, toString, wait, wait, wait

    Methods inherited from interface org.apache.camel.CamelContextAware

    setCamelContext

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

    getCamelContext

    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.SSLContextParametersAware

    retrieveGlobalSslContextParameters

    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

    • NettyComponent

      public NettyComponent()
    • NettyComponent

      public NettyComponent(Class<? extends org.apache.camel.Endpoint> endpointClass)
    • NettyComponent

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

    • getMaximumPoolSize

      public int getMaximumPoolSize()
    • setMaximumPoolSize

      public void setMaximumPoolSize(int maximumPoolSize)
      Sets a maximum thread pool size for the netty consumer ordered thread pool. The default size is 2 x cpu_core plus 1. Setting this value to eg 10 will then use 10 threads unless 2 x cpu_core plus 1 is a higher value, which then will override and be used. For example if there are 8 cores, then the consumer thread pool will be 17. This thread pool is used to route messages received from Netty by Camel. We use a separate thread pool to ensure ordering of messages and also in case some messages will block, then nettys worker threads (event loop) wont be affected.
    • createEndpoint

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

      protected NettyConfiguration parseConfiguration(NettyConfiguration configuration, String remaining, Map<String,Object> parameters) throws Exception
      Parses the configuration
      Returns:
      the parsed and valid configuration to use
      Throws:
      Exception
    • getConfiguration

      public NettyConfiguration getConfiguration()
    • setConfiguration

      public void setConfiguration(NettyConfiguration configuration)
      To use the NettyConfiguration as configuration when creating endpoints.
    • setExecutorService

      public void setExecutorService(io.netty.util.concurrent.EventExecutorGroup executorService)
      To use the given EventExecutorGroup.
    • isUseGlobalSslContextParameters

      public boolean isUseGlobalSslContextParameters()
      Specified by:
      isUseGlobalSslContextParameters in interface org.apache.camel.SSLContextParametersAware
    • setUseGlobalSslContextParameters

      public void setUseGlobalSslContextParameters(boolean useGlobalSslContextParameters)
      Enable usage of global SSL context parameters.
      Specified by:
      setUseGlobalSslContextParameters in interface org.apache.camel.SSLContextParametersAware
    • getExecutorService

      public io.netty.util.concurrent.EventExecutorGroup getExecutorService()
    • doStart

      protected void doStart() throws Exception
      Overrides:
      doStart in class org.apache.camel.support.service.BaseService
      Throws:
      Exception
    • doStop

      protected void doStop() throws Exception
      Overrides:
      doStop in class org.apache.camel.support.service.BaseService
      Throws:
      Exception