diff --git a/include/pulsar/c/consumer_configuration.h b/include/pulsar/c/consumer_configuration.h index 96abc5cc..d6c4fcdd 100644 --- a/include/pulsar/c/consumer_configuration.h +++ b/include/pulsar/c/consumer_configuration.h @@ -304,6 +304,12 @@ PULSAR_PUBLIC void pulsar_consumer_configuration_set_start_message_id_inclusive( PULSAR_PUBLIC int pulsar_consumer_configuration_is_start_message_id_inclusive( pulsar_consumer_configuration_t *consumer_configuration); +PULSAR_PUBLIC void pulsar_consumer_configuration_set_batch_index_ack_enabled( + pulsar_consumer_configuration_t *consumer_configuration, int enabled); + +PULSAR_PUBLIC int pulsar_consumer_configuration_is_batch_index_ack_enabled( + pulsar_consumer_configuration_t *consumer_configuration); + // const CryptoKeyReaderPtr getCryptoKeyReader() // // const; diff --git a/lib/c/c_ConsumerConfiguration.cc b/lib/c/c_ConsumerConfiguration.cc index 6b0d27b7..8a03d3d2 100644 --- a/lib/c/c_ConsumerConfiguration.cc +++ b/lib/c/c_ConsumerConfiguration.cc @@ -227,3 +227,13 @@ int pulsar_consumer_configuration_is_start_message_id_inclusive( pulsar_consumer_configuration_t *consumer_configuration) { return consumer_configuration->consumerConfiguration.isStartMessageIdInclusive(); } + +void pulsar_consumer_configuration_set_batch_index_ack_enabled( + pulsar_consumer_configuration_t *consumer_configuration, int enabled) { + consumer_configuration->consumerConfiguration.setBatchIndexAckEnabled(enabled); +} + +int pulsar_consumer_configuration_is_batch_index_ack_enabled( + pulsar_consumer_configuration_t *consumer_configuration) { + return consumer_configuration->consumerConfiguration.isBatchIndexAckEnabled(); +} diff --git a/tests/c/c_ConsumerConfigurationTest.cc b/tests/c/c_ConsumerConfigurationTest.cc index e877867f..03204ccd 100644 --- a/tests/c/c_ConsumerConfigurationTest.cc +++ b/tests/c/c_ConsumerConfigurationTest.cc @@ -34,4 +34,7 @@ TEST(C_ConsumerConfigurationTest, testCApiConfig) { pulsar_consumer_configuration_set_start_message_id_inclusive(consumer_conf, 1); ASSERT_EQ(pulsar_consumer_configuration_is_start_message_id_inclusive(consumer_conf), 1); + + pulsar_consumer_configuration_set_batch_index_ack_enabled(consumer_conf, 1); + ASSERT_EQ(pulsar_consumer_configuration_is_batch_index_ack_enabled(consumer_conf), 1); }