19 #ifndef PULSAR_CONSUMERCONFIGURATION_H_
20 #define PULSAR_CONSUMERCONFIGURATION_H_
24 #include <pulsar/Result.h>
25 #include <pulsar/ConsumerType.h>
26 #include <pulsar/Message.h>
27 #include <pulsar/Schema.h>
28 #include <pulsar/ConsumerCryptoFailureAction.h>
29 #include <pulsar/CryptoKeyReader.h>
30 #include <pulsar/InitialPosition.h>
32 #pragma GCC visibility push(default)
40 typedef std::function<void(
Result,
const Message& msg)> ReceiveCallback;
45 class ConsumerConfigurationImpl;
94 bool hasMessageListener()
const;
118 int getReceiverQueueSize()
const;
135 void setConsumerName(
const std::string&);
136 const std::string& getConsumerName()
const;
163 bool isEncryptionEnabled()
const;
164 const CryptoKeyReaderPtr getCryptoKeyReader()
const;
167 ConsumerCryptoFailureAction getCryptoFailureAction()
const;
170 bool isReadCompacted()
const;
171 void setReadCompacted(
bool compacted);
181 int getPatternAutoDiscoveryPeriod()
const;
183 void setSubscriptionInitialPosition(InitialPosition subscriptionInitialPosition);
184 InitialPosition getSubscriptionInitialPosition()
const;
201 const std::string&
getProperty(
const std::string& name)
const;
220 friend class PulsarWrapper;
223 std::shared_ptr<ConsumerConfigurationImpl> impl_;
226 #pragma GCC visibility pop
ConsumerConfiguration & setProperty(const std::string &name, const std::string &value)
void setBrokerConsumerStatsCacheTimeInMs(const long cacheTimeInMs)
Result
Definition: Result.h:31
void setPatternAutoDiscoveryPeriod(int periodInSeconds)
void setReceiverQueueSize(int size)
ConsumerConfiguration & setMessageListener(MessageListener messageListener)
int getMaxTotalReceiverQueueSizeAcrossPartitions() const
Definition: ConsumerConfiguration.h:50
void setMaxTotalReceiverQueueSizeAcrossPartitions(int maxTotalReceiverQueueSizeAcrossPartitions)
const SchemaInfo & getSchema() const
const std::string & getProperty(const std::string &name) const
std::function< void(Consumer consumer, const Message &msg)> MessageListener
Callback definition for MessageListener.
Definition: ConsumerConfiguration.h:43
ConsumerType
Definition: ConsumerType.h:24
void setUnAckedMessagesTimeoutMs(const uint64_t milliSeconds)
Definition: Consumer.h:35
ConsumerConfiguration & setProperties(const std::map< std::string, std::string > &properties)
ConsumerConfiguration & setSchema(const SchemaInfo &schemaInfo)
ConsumerConfiguration & setConsumerType(ConsumerType consumerType)
Definition: Authentication.h:31
long getBrokerConsumerStatsCacheTimeInMs() const
bool hasProperty(const std::string &name) const
std::map< std::string, std::string > & getProperties() const
long getUnAckedMessagesTimeoutMs() const
std::function< void(Result result)> ResultCallback
Callback definition for non-data operation.
Definition: ConsumerConfiguration.h:36