camel-pulsar-kafka-connector source configuration

Connector description: Send and receive messages from/to Apache Pulsar messaging system.

When using camel-pulsar-kafka-connector as source make sure to use the following Maven dependency to have support for the connector:

<dependency>
  <groupId>org.apache.camel.kafkaconnector</groupId>
  <artifactId>camel-pulsar-kafka-connector</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel Kafka connector version -->
</dependency>

To use this Source connector in Kafka connect you’ll need to set the following connector.class

connector.class=org.apache.camel.kafkaconnector.pulsar.CamelPulsarSourceConnector

The camel-pulsar source connector supports 45 options, which are listed below.

Name Description Default Required Priority

camel.source.path.persistence

Whether the topic is persistent or non-persistent One of: [persistent] [non-persistent]

null

true

HIGH

camel.source.path.tenant

The tenant

null

true

HIGH

camel.source.path.namespace

The namespace

null

true

HIGH

camel.source.path.topic

The topic

null

true

HIGH

camel.source.endpoint.ackGroupTimeMillis

Group the consumer acknowledgments for the specified time in milliseconds - defaults to 100

100L

false

MEDIUM

camel.source.endpoint.ackTimeoutMillis

Timeout for unacknowledged messages in milliseconds - defaults to 10000

10000L

false

MEDIUM

camel.source.endpoint.allowManualAcknowledgement

Whether to allow manual message acknowledgements. If this option is enabled, then messages are not acknowledged automatically after successful route completion. Instead, an instance of PulsarMessageReceipt is stored as a header on the org.apache.camel.Exchange. Messages can then be acknowledged using PulsarMessageReceipt at any time before the ackTimeout occurs.

false

false

MEDIUM

camel.source.endpoint.bridgeErrorHandler

Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.

false

false

MEDIUM

camel.source.endpoint.consumerName

Name of the consumer when subscription is EXCLUSIVE

"sole-consumer"

false

MEDIUM

camel.source.endpoint.consumerNamePrefix

Prefix to add to consumer names when a SHARED or FAILOVER subscription is used

"cons"

false

MEDIUM

camel.source.endpoint.consumerQueueSize

Size of the consumer queue - defaults to 10

10

false

MEDIUM

camel.source.endpoint.deadLetterTopic

Name of the topic where the messages which fail maxRedeliverCount times will be sent. Note: if not set, default topic name will be topicName-subscriptionName-DLQ

null

false

MEDIUM

camel.source.endpoint.maxRedeliverCount

Maximum number of times that a message will be redelivered before being sent to the dead letter queue. If this value is not set, no Dead Letter Policy will be created

null

false

MEDIUM

camel.source.endpoint.negativeAckRedeliveryDelay Micros

Set the negative acknowledgement delay

60000000L

false

MEDIUM

camel.source.endpoint.numberOfConsumers

Number of consumers - defaults to 1

1

false

MEDIUM

camel.source.endpoint.readCompacted

Enable compacted topic reading.

false

false

MEDIUM

camel.source.endpoint.subscriptionInitialPosition

Control the initial position in the topic of a newly created subscription. Default is latest message. One of: [EARLIEST] [LATEST]

"LATEST"

false

MEDIUM

camel.source.endpoint.subscriptionName

Name of the subscription to use

"subs"

false

MEDIUM

camel.source.endpoint.subscriptionTopicsMode

Determines to which topics this consumer should be subscribed to - Persistent, Non-Persistent, or both. Only used with pattern subscriptions. One of: [PersistentOnly] [NonPersistentOnly] [AllTopics]

"PersistentOnly"

false

MEDIUM

camel.source.endpoint.subscriptionType

Type of the subscription EXCLUSIVESHAREDFAILOVERKEY_SHARED, defaults to EXCLUSIVE One of: [EXCLUSIVE] [SHARED] [FAILOVER] [KEY_SHARED]

"EXCLUSIVE"

false

MEDIUM

camel.source.endpoint.topicsPattern

Whether the topic is a pattern (regular expression) that allows the consumer to subscribe to all matching topics in the namespace

false

false

MEDIUM

camel.source.endpoint.exceptionHandler

To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored.

null

false

MEDIUM

camel.source.endpoint.exchangePattern

Sets the exchange pattern when the consumer creates an exchange. One of: [InOnly] [InOut] [InOptionalOut]

null

false

MEDIUM

camel.component.pulsar.configuration

Allows to pre-configure the Pulsar component with common options that the endpoints will reuse.

null

false

MEDIUM

camel.component.pulsar.ackGroupTimeMillis

Group the consumer acknowledgments for the specified time in milliseconds - defaults to 100

100L

false

MEDIUM

camel.component.pulsar.ackTimeoutMillis

Timeout for unacknowledged messages in milliseconds - defaults to 10000

10000L

false

MEDIUM

camel.component.pulsar.allowManualAcknowledgement

Whether to allow manual message acknowledgements. If this option is enabled, then messages are not acknowledged automatically after successful route completion. Instead, an instance of PulsarMessageReceipt is stored as a header on the org.apache.camel.Exchange. Messages can then be acknowledged using PulsarMessageReceipt at any time before the ackTimeout occurs.

false

false

MEDIUM

camel.component.pulsar.bridgeErrorHandler

Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.

false

false

MEDIUM

camel.component.pulsar.consumerName

Name of the consumer when subscription is EXCLUSIVE

"sole-consumer"

false

MEDIUM

camel.component.pulsar.consumerNamePrefix

Prefix to add to consumer names when a SHARED or FAILOVER subscription is used

"cons"

false

MEDIUM

camel.component.pulsar.consumerQueueSize

Size of the consumer queue - defaults to 10

10

false

MEDIUM

camel.component.pulsar.deadLetterTopic

Name of the topic where the messages which fail maxRedeliverCount times will be sent. Note: if not set, default topic name will be topicName-subscriptionName-DLQ

null

false

MEDIUM

camel.component.pulsar.maxRedeliverCount

Maximum number of times that a message will be redelivered before being sent to the dead letter queue. If this value is not set, no Dead Letter Policy will be created

null

false

MEDIUM

camel.component.pulsar.negativeAckRedeliveryDelay Micros

Set the negative acknowledgement delay

60000000L

false

MEDIUM

camel.component.pulsar.numberOfConsumers

Number of consumers - defaults to 1

1

false

MEDIUM

camel.component.pulsar.readCompacted

Enable compacted topic reading.

false

false

MEDIUM

camel.component.pulsar.subscriptionInitialPosition

Control the initial position in the topic of a newly created subscription. Default is latest message. One of: [EARLIEST] [LATEST]

"LATEST"

false

MEDIUM

camel.component.pulsar.subscriptionName

Name of the subscription to use

"subs"

false

MEDIUM

camel.component.pulsar.subscriptionTopicsMode

Determines to which topics this consumer should be subscribed to - Persistent, Non-Persistent, or both. Only used with pattern subscriptions. One of: [PersistentOnly] [NonPersistentOnly] [AllTopics]

"PersistentOnly"

false

MEDIUM

camel.component.pulsar.subscriptionType

Type of the subscription EXCLUSIVESHAREDFAILOVERKEY_SHARED, defaults to EXCLUSIVE One of: [EXCLUSIVE] [SHARED] [FAILOVER] [KEY_SHARED]

"EXCLUSIVE"

false

MEDIUM

camel.component.pulsar.topicsPattern

Whether the topic is a pattern (regular expression) that allows the consumer to subscribe to all matching topics in the namespace

false

false

MEDIUM

camel.component.pulsar.pulsarMessageReceiptFactory

Provide a factory to create an alternate implementation of PulsarMessageReceipt.

null

false

MEDIUM

camel.component.pulsar.autoConfiguration

The pulsar auto configuration

null

false

MEDIUM

camel.component.pulsar.autowiredEnabled

Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.

true

false

MEDIUM

camel.component.pulsar.pulsarClient

The pulsar client

null

false

MEDIUM

The camel-pulsar source connector has no converters out of the box.

The camel-pulsar source connector has no transforms out of the box.

The camel-pulsar source connector has no aggregation strategies out of the box.