22 #include <pulsar/defines.h>
35 } pulsar_logger_level_t;
37 typedef void (*pulsar_logger)(pulsar_logger_level_t level,
const char *file,
int line,
const char *message,
44 bool (*is_enabled)(pulsar_logger_level_t level,
void *ctx);
49 typedef struct _pulsar_client_configuration pulsar_client_configuration_t;
50 typedef struct _pulsar_authentication pulsar_authentication_t;
52 PULSAR_PUBLIC pulsar_client_configuration_t *pulsar_client_configuration_create();
54 PULSAR_PUBLIC
void pulsar_client_configuration_free(pulsar_client_configuration_t *conf);
61 PULSAR_PUBLIC
void pulsar_client_configuration_set_auth(pulsar_client_configuration_t *conf,
62 pulsar_authentication_t *authentication);
70 PULSAR_PUBLIC
void pulsar_client_configuration_set_memory_limit(pulsar_client_configuration_t *conf,
71 unsigned long long memoryLimitBytes);
76 PULSAR_PUBLIC
unsigned long long pulsar_client_configuration_get_memory_limit(
77 pulsar_client_configuration_t *conf);
85 PULSAR_PUBLIC
void pulsar_client_configuration_set_operation_timeout_seconds(
86 pulsar_client_configuration_t *conf,
int timeout);
91 PULSAR_PUBLIC
int pulsar_client_configuration_get_operation_timeout_seconds(
92 pulsar_client_configuration_t *conf);
100 PULSAR_PUBLIC
void pulsar_client_configuration_set_io_threads(pulsar_client_configuration_t *conf,
106 PULSAR_PUBLIC
int pulsar_client_configuration_get_io_threads(pulsar_client_configuration_t *conf);
118 PULSAR_PUBLIC
void pulsar_client_configuration_set_message_listener_threads(
119 pulsar_client_configuration_t *conf,
int threads);
124 PULSAR_PUBLIC
int pulsar_client_configuration_get_message_listener_threads(
125 pulsar_client_configuration_t *conf);
135 PULSAR_PUBLIC
void pulsar_client_configuration_set_concurrent_lookup_request(
136 pulsar_client_configuration_t *conf,
int concurrentLookupRequest);
141 PULSAR_PUBLIC
int pulsar_client_configuration_get_concurrent_lookup_request(
142 pulsar_client_configuration_t *conf);
144 PULSAR_PUBLIC
void pulsar_client_configuration_set_logger(pulsar_client_configuration_t *conf,
145 pulsar_logger logger,
void *ctx);
147 PULSAR_PUBLIC
void pulsar_client_configuration_set_logger_t(pulsar_client_configuration_t *conf,
150 PULSAR_PUBLIC
void pulsar_client_configuration_set_use_tls(pulsar_client_configuration_t *conf,
int useTls);
152 PULSAR_PUBLIC
int pulsar_client_configuration_is_use_tls(pulsar_client_configuration_t *conf);
154 PULSAR_PUBLIC
void pulsar_client_configuration_set_tls_trust_certs_file_path(
155 pulsar_client_configuration_t *conf,
const char *tlsTrustCertsFilePath);
157 PULSAR_PUBLIC
const char *pulsar_client_configuration_get_tls_trust_certs_file_path(
158 pulsar_client_configuration_t *conf);
160 PULSAR_PUBLIC
void pulsar_client_configuration_set_tls_allow_insecure_connection(
161 pulsar_client_configuration_t *conf,
int allowInsecure);
163 PULSAR_PUBLIC
int pulsar_client_configuration_is_tls_allow_insecure_connection(
164 pulsar_client_configuration_t *conf);
170 PULSAR_PUBLIC
void pulsar_client_configuration_set_stats_interval_in_seconds(
171 pulsar_client_configuration_t *conf,
const unsigned int interval);
173 PULSAR_PUBLIC
int pulsar_client_configuration_is_validate_hostname(pulsar_client_configuration_t *conf);
175 PULSAR_PUBLIC
void pulsar_client_configuration_set_validate_hostname(pulsar_client_configuration_t *conf,
176 int validateHostName);
181 PULSAR_PUBLIC
const unsigned int pulsar_client_configuration_get_stats_interval_in_seconds(
182 pulsar_client_configuration_t *conf);