22#include <pulsar/defines.h>
34} pulsar_logger_level_t;
36typedef void (*pulsar_logger)(pulsar_logger_level_t level,
const char *file,
int line,
const char *message,
39typedef struct _pulsar_client_configuration pulsar_client_configuration_t;
40typedef struct _pulsar_authentication pulsar_authentication_t;
42PULSAR_PUBLIC pulsar_client_configuration_t *pulsar_client_configuration_create();
44PULSAR_PUBLIC
void pulsar_client_configuration_free(pulsar_client_configuration_t *conf);
51PULSAR_PUBLIC
void pulsar_client_configuration_set_auth(pulsar_client_configuration_t *conf,
52 pulsar_authentication_t *authentication);
60PULSAR_PUBLIC
void pulsar_client_configuration_set_memory_limit(pulsar_client_configuration_t *conf,
61 unsigned long long memoryLimitBytes);
66PULSAR_PUBLIC
unsigned long long pulsar_client_configuration_get_memory_limit(
67 pulsar_client_configuration_t *conf);
75PULSAR_PUBLIC
void pulsar_client_configuration_set_operation_timeout_seconds(
76 pulsar_client_configuration_t *conf,
int timeout);
81PULSAR_PUBLIC
int pulsar_client_configuration_get_operation_timeout_seconds(
82 pulsar_client_configuration_t *conf);
90PULSAR_PUBLIC
void pulsar_client_configuration_set_io_threads(pulsar_client_configuration_t *conf,
96PULSAR_PUBLIC
int pulsar_client_configuration_get_io_threads(pulsar_client_configuration_t *conf);
108PULSAR_PUBLIC
void pulsar_client_configuration_set_message_listener_threads(
109 pulsar_client_configuration_t *conf,
int threads);
114PULSAR_PUBLIC
int pulsar_client_configuration_get_message_listener_threads(
115 pulsar_client_configuration_t *conf);
125PULSAR_PUBLIC
void pulsar_client_configuration_set_concurrent_lookup_request(
126 pulsar_client_configuration_t *conf,
int concurrentLookupRequest);
131PULSAR_PUBLIC
int pulsar_client_configuration_get_concurrent_lookup_request(
132 pulsar_client_configuration_t *conf);
134PULSAR_PUBLIC
void pulsar_client_configuration_set_logger(pulsar_client_configuration_t *conf,
135 pulsar_logger logger,
void *ctx);
137PULSAR_PUBLIC
void pulsar_client_configuration_set_use_tls(pulsar_client_configuration_t *conf,
int useTls);
139PULSAR_PUBLIC
int pulsar_client_configuration_is_use_tls(pulsar_client_configuration_t *conf);
141PULSAR_PUBLIC
void pulsar_client_configuration_set_tls_trust_certs_file_path(
142 pulsar_client_configuration_t *conf,
const char *tlsTrustCertsFilePath);
144PULSAR_PUBLIC
const char *pulsar_client_configuration_get_tls_trust_certs_file_path(
145 pulsar_client_configuration_t *conf);
147PULSAR_PUBLIC
void pulsar_client_configuration_set_tls_allow_insecure_connection(
148 pulsar_client_configuration_t *conf,
int allowInsecure);
150PULSAR_PUBLIC
int pulsar_client_configuration_is_tls_allow_insecure_connection(
151 pulsar_client_configuration_t *conf);
157PULSAR_PUBLIC
void pulsar_client_configuration_set_stats_interval_in_seconds(
158 pulsar_client_configuration_t *conf,
const unsigned int interval);
160PULSAR_PUBLIC
int pulsar_client_configuration_is_validate_hostname(pulsar_client_configuration_t *conf);
162PULSAR_PUBLIC
void pulsar_client_configuration_set_validate_hostname(pulsar_client_configuration_t *conf,
163 int validateHostName);
168PULSAR_PUBLIC
const unsigned int pulsar_client_configuration_get_stats_interval_in_seconds(
169 pulsar_client_configuration_t *conf);