22 #include <pulsar/c/message.h>
23 #include <pulsar/c/reader.h>
24 #include <pulsar/defines.h>
26 #include "consumer_configuration.h"
32 typedef struct _pulsar_reader_configuration pulsar_reader_configuration_t;
34 typedef void (*pulsar_reader_listener)(pulsar_reader_t *reader, pulsar_message_t *msg,
void *ctx);
36 PULSAR_PUBLIC pulsar_reader_configuration_t *pulsar_reader_configuration_create();
38 PULSAR_PUBLIC
void pulsar_reader_configuration_free(pulsar_reader_configuration_t *configuration);
44 PULSAR_PUBLIC
void pulsar_reader_configuration_set_reader_listener(
45 pulsar_reader_configuration_t *configuration, pulsar_reader_listener listener,
void *ctx);
47 PULSAR_PUBLIC
int pulsar_reader_configuration_has_reader_listener(
48 pulsar_reader_configuration_t *configuration);
71 PULSAR_PUBLIC
void pulsar_reader_configuration_set_receiver_queue_size(
72 pulsar_reader_configuration_t *configuration,
int size);
74 PULSAR_PUBLIC
int pulsar_reader_configuration_get_receiver_queue_size(
75 pulsar_reader_configuration_t *configuration);
77 PULSAR_PUBLIC
void pulsar_reader_configuration_set_reader_name(pulsar_reader_configuration_t *configuration,
78 const char *readerName);
80 PULSAR_PUBLIC
const char *pulsar_reader_configuration_get_reader_name(
81 pulsar_reader_configuration_t *configuration);
83 PULSAR_PUBLIC
void pulsar_reader_configuration_set_subscription_role_prefix(
84 pulsar_reader_configuration_t *configuration,
const char *subscriptionRolePrefix);
86 PULSAR_PUBLIC
const char *pulsar_reader_configuration_get_subscription_role_prefix(
87 pulsar_reader_configuration_t *configuration);
89 PULSAR_PUBLIC
void pulsar_reader_configuration_set_read_compacted(
90 pulsar_reader_configuration_t *configuration,
int readCompacted);
92 PULSAR_PUBLIC
int pulsar_reader_configuration_is_read_compacted(pulsar_reader_configuration_t *configuration);
94 PULSAR_PUBLIC
void pulsar_reader_configuration_set_default_crypto_key_reader(
95 pulsar_reader_configuration_t *configuration,
const char *public_key_path,
const char *private_key_path);
97 PULSAR_PUBLIC pulsar_consumer_crypto_failure_action
98 pulsar_reader_configuration_get_crypto_failure_action(pulsar_reader_configuration_t *configuration);
100 PULSAR_PUBLIC
void pulsar_reader_configuration_set_crypto_failure_action(
101 pulsar_reader_configuration_t *configuration,
102 pulsar_consumer_crypto_failure_action crypto_failure_action);