This is an automated email from the ASF dual-hosted git repository.

baodi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git


The following commit(s) were added to refs/heads/main by this push:
     new 2a69168  feat: expose partitions update interval configuration to C 
client (#437)
2a69168 is described below

commit 2a6916819b2a80a532f827dc96026b8fdc0b15ed
Author: Baodi Shi <[email protected]>
AuthorDate: Mon Jul 22 19:01:39 2024 +0800

    feat: expose partitions update interval configuration to C client (#437)
    
    * feat: expose partitions update interval configuration to C client
    
    * code format
---
 include/pulsar/c/client_configuration.h |  6 ++++++
 lib/c/c_ClientConfiguration.cc          | 10 ++++++++++
 tests/c/c_ClientConfigurationTest.cc    |  3 +++
 3 files changed, 19 insertions(+)

diff --git a/include/pulsar/c/client_configuration.h 
b/include/pulsar/c/client_configuration.h
index 7ff5dcb..75c24b3 100644
--- a/include/pulsar/c/client_configuration.h
+++ b/include/pulsar/c/client_configuration.h
@@ -192,6 +192,12 @@ PULSAR_PUBLIC void 
pulsar_client_configuration_set_listener_name(pulsar_client_c
 
 PULSAR_PUBLIC const char 
*pulsar_client_configuration_get_listener_name(pulsar_client_configuration_t 
*conf);
 
+PULSAR_PUBLIC void pulsar_client_configuration_set_partitions_update_interval(
+    pulsar_client_configuration_t *conf, const unsigned int intervalInSeconds);
+
+PULSAR_PUBLIC const unsigned int 
pulsar_client_configuration_get_partitions_update_interval(
+    pulsar_client_configuration_t *conf);
+
 /*
  * Get the stats interval set in the client.
  */
diff --git a/lib/c/c_ClientConfiguration.cc b/lib/c/c_ClientConfiguration.cc
index 96a1bf7..630cabc 100644
--- a/lib/c/c_ClientConfiguration.cc
+++ b/lib/c/c_ClientConfiguration.cc
@@ -198,3 +198,13 @@ void 
pulsar_client_configuration_set_listener_name(pulsar_client_configuration_t
 const char 
*pulsar_client_configuration_get_listener_name(pulsar_client_configuration_t 
*conf) {
     return conf->conf.getListenerName().c_str();
 }
+
+void 
pulsar_client_configuration_set_partitions_update_interval(pulsar_client_configuration_t
 *conf,
+                                                                const unsigned 
int intervalInSeconds) {
+    conf->conf.setPartititionsUpdateInterval(intervalInSeconds);
+}
+
+const unsigned int pulsar_client_configuration_get_partitions_update_interval(
+    pulsar_client_configuration_t *conf) {
+    return conf->conf.getPartitionsUpdateInterval();
+}
diff --git a/tests/c/c_ClientConfigurationTest.cc 
b/tests/c/c_ClientConfigurationTest.cc
index 3fec51a..a7dd022 100644
--- a/tests/c/c_ClientConfigurationTest.cc
+++ b/tests/c/c_ClientConfigurationTest.cc
@@ -31,4 +31,7 @@ TEST(C_ClientConfigurationTest, testCApiConfig) {
 
     pulsar_client_configuration_set_listener_name(conf, "listenerName");
     ASSERT_STREQ(pulsar_client_configuration_get_listener_name(conf), 
"listenerName");
+
+    pulsar_client_configuration_set_partitions_update_interval(conf, 10);
+    
ASSERT_EQ(pulsar_client_configuration_get_partitions_update_interval(conf), 10);
 }

Reply via email to