Package org.apache.camel.component.kafka
Class KafkaComponent
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultComponent
org.apache.camel.support.HealthCheckComponent
org.apache.camel.component.kafka.KafkaComponent
- 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("kafka")
public class KafkaComponent
extends org.apache.camel.support.HealthCheckComponent
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
-
Method Summary
Modifier and TypeMethodDescriptionprotected KafkaEndpoint
protected void
doInit()
protected void
doStart()
long
int
long
int
boolean
void
setConfiguration
(KafkaConfiguration configuration) Allows to pre-configure the Kafka component with common options that the endpoints will reuse.void
setCreateConsumerBackoffInterval
(long createConsumerBackoffInterval) The delay in millis seconds to wait before trying again to create the kafka consumer (kafka-client).void
setCreateConsumerBackoffMaxAttempts
(int createConsumerBackoffMaxAttempts) Maximum attempts to create the kafka consumer (kafka-client), before eventually giving up and failing.void
setKafkaClientFactory
(KafkaClientFactory kafkaClientFactory) Factory to use for creatingKafkaConsumer
andKafkaProducer
instances.void
setKafkaManualCommitFactory
(KafkaManualCommitFactory kafkaManualCommitFactory) Factory to use for creatingKafkaManualCommit
instances.void
setPollExceptionStrategy
(PollExceptionStrategy pollExceptionStrategy) To use a custom strategy with the consumer to control how to handle exceptions thrown from the Kafka broker while pooling messages.void
setSubscribeConsumerBackoffInterval
(long subscribeConsumerBackoffInterval) The delay in millis seconds to wait before trying again to subscribe to the kafka broker.void
setSubscribeConsumerBackoffMaxAttempts
(int subscribeConsumerBackoffMaxAttempts) Maximum number the kafka consumer will attempt to subscribe to the kafka broker, before eventually giving up and failing.void
setUseGlobalSslContextParameters
(boolean useGlobalSslContextParameters) Enable usage of global SSL context parameters.Methods inherited from class org.apache.camel.support.HealthCheckComponent
isHealthCheckConsumerEnabled, isHealthCheckProducerEnabled, setHealthCheckConsumerEnabled, setHealthCheckProducerEnabled
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, useRawUri, validateParameters, validateURI
Methods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, doShutdown, doStop, 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
-
KafkaComponent
public KafkaComponent() -
KafkaComponent
public KafkaComponent(org.apache.camel.CamelContext context)
-
-
Method Details
-
createEndpoint
protected KafkaEndpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws Exception- Specified by:
createEndpoint
in classorg.apache.camel.support.DefaultComponent
- Throws:
Exception
-
getConfiguration
-
setConfiguration
Allows to pre-configure the Kafka component with common options that the endpoints will reuse. -
isUseGlobalSslContextParameters
public boolean isUseGlobalSslContextParameters()- Specified by:
isUseGlobalSslContextParameters
in interfaceorg.apache.camel.SSLContextParametersAware
-
setUseGlobalSslContextParameters
public void setUseGlobalSslContextParameters(boolean useGlobalSslContextParameters) Enable usage of global SSL context parameters.- Specified by:
setUseGlobalSslContextParameters
in interfaceorg.apache.camel.SSLContextParametersAware
-
getKafkaManualCommitFactory
-
setKafkaManualCommitFactory
Factory to use for creatingKafkaManualCommit
instances. This allows to plugin a custom factory to create customKafkaManualCommit
instances in case special logic is needed when doing manual commits that deviates from the default implementation that comes out of the box. -
getKafkaClientFactory
-
setKafkaClientFactory
Factory to use for creatingKafkaConsumer
andKafkaProducer
instances. This allows configuring a custom factory to create instances with logic that extends the vanilla Kafka clients. -
getPollExceptionStrategy
-
setPollExceptionStrategy
To use a custom strategy with the consumer to control how to handle exceptions thrown from the Kafka broker while pooling messages. -
getCreateConsumerBackoffMaxAttempts
public int getCreateConsumerBackoffMaxAttempts() -
setCreateConsumerBackoffMaxAttempts
public void setCreateConsumerBackoffMaxAttempts(int createConsumerBackoffMaxAttempts) Maximum attempts to create the kafka consumer (kafka-client), before eventually giving up and failing. Error during creating the consumer may be fatal due to invalid configuration and as such recovery is not possible. However, one part of the validation is DNS resolution of the bootstrap broker hostnames. This may be a temporary networking problem, and could potentially be recoverable. While other errors are fatal, such as some invalid kafka configurations. Unfortunately, kafka-client does not separate this kind of errors. Camel will by default retry forever, and therefore never give up. If you want to give up after many attempts then set this option and Camel will then when giving up terminate the consumer. To try again, you can manually restart the consumer by stopping, and starting the route. -
getCreateConsumerBackoffInterval
public long getCreateConsumerBackoffInterval() -
setCreateConsumerBackoffInterval
public void setCreateConsumerBackoffInterval(long createConsumerBackoffInterval) The delay in millis seconds to wait before trying again to create the kafka consumer (kafka-client). -
getSubscribeConsumerBackoffMaxAttempts
public int getSubscribeConsumerBackoffMaxAttempts() -
setSubscribeConsumerBackoffMaxAttempts
public void setSubscribeConsumerBackoffMaxAttempts(int subscribeConsumerBackoffMaxAttempts) Maximum number the kafka consumer will attempt to subscribe to the kafka broker, before eventually giving up and failing. Error during subscribing the consumer to the kafka topic could be temporary errors due to network issues, and could potentially be recoverable. Camel will by default retry forever, and therefore never give up. If you want to give up after many attempts, then set this option and Camel will then when giving up terminate the consumer. You can manually restart the consumer by stopping and starting the route, to try again. -
getSubscribeConsumerBackoffInterval
public long getSubscribeConsumerBackoffInterval() -
setSubscribeConsumerBackoffInterval
public void setSubscribeConsumerBackoffInterval(long subscribeConsumerBackoffInterval) The delay in millis seconds to wait before trying again to subscribe to the kafka broker. -
doInit
- Overrides:
doInit
in classorg.apache.camel.support.DefaultComponent
- Throws:
Exception
-
doStart
- Overrides:
doStart
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-