// kafka-connector options: START
[[camel-pulsar-kafka-connector-source]]
= camel-pulsar-kafka-connector source configuration

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

[source,xml]
----
<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

[source,java]
----
connector.class=org.apache.camel.kafkaconnector.pulsar.CamelPulsarSourceConnector
----


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



[width="100%",cols="2,5,^1,1,1",options="header"]
|===
| 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.source.endpoint.synchronous* | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | true | 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.
// kafka-connector options: END
