pulsar-client-cpp
Loading...
Searching...
No Matches
ReaderConfiguration.h
1
19#ifndef PULSAR_READER_CONFIGURATION_H_
20#define PULSAR_READER_CONFIGURATION_H_
21
22#include <functional>
23#include <memory>
24#include <pulsar/defines.h>
25#include <pulsar/Result.h>
26#include <pulsar/Message.h>
27#include <pulsar/Schema.h>
28#include <pulsar/CryptoKeyReader.h>
29#include <pulsar/ConsumerCryptoFailureAction.h>
30
31namespace pulsar {
32
33class Reader;
34class PulsarWrapper;
35
37typedef std::function<void(Result result)> ResultCallback;
38typedef std::function<void(Result result, MessageId messageId)> GetLastMessageIdCallback;
39
41typedef std::function<void(Reader reader, const Message& msg)> ReaderListener;
42
43struct ReaderConfigurationImpl;
44
48class PULSAR_PUBLIC ReaderConfiguration {
49 public:
54
64
68 const SchemaInfo& getSchema() const;
69
75
80
84 bool hasReaderListener() const;
85
107 void setReceiverQueueSize(int size);
108
113
119 void setReaderName(const std::string& readerName);
120
124 const std::string& getReaderName() const;
125
133 void setSubscriptionRolePrefix(const std::string& subscriptionRolePrefix);
134
138 const std::string& getSubscriptionRolePrefix() const;
139
153 void setReadCompacted(bool compacted);
154
158 bool isReadCompacted() const;
159
165 void setInternalSubscriptionName(std::string internalSubscriptionName);
166
170 const std::string& getInternalSubscriptionName() const;
171
179 void setUnAckedMessagesTimeoutMs(const uint64_t milliSeconds);
180
185
198 void setTickDurationInMs(const uint64_t milliSeconds);
199
204
213 void setAckGroupingTimeMs(long ackGroupingMillis);
214
221
228 void setAckGroupingMaxSize(long maxGroupingSize);
229
236
241
245 const CryptoKeyReaderPtr getCryptoKeyReader() const;
246
252 ReaderConfiguration& setCryptoKeyReader(CryptoKeyReaderPtr cryptoKeyReader);
253
257 ConsumerCryptoFailureAction getCryptoFailureAction() const;
258
262 ReaderConfiguration& setCryptoFailureAction(ConsumerCryptoFailureAction action);
263
271 bool hasProperty(const std::string& name) const;
272
279 const std::string& getProperty(const std::string& name) const;
280
284 std::map<std::string, std::string>& getProperties() const;
285
291 ReaderConfiguration& setProperty(const std::string& name, const std::string& value);
292
296 ReaderConfiguration& setProperties(const std::map<std::string, std::string>& properties);
297
298 private:
299 std::shared_ptr<ReaderConfigurationImpl> impl_;
300};
301} // namespace pulsar
302#endif /* PULSAR_READER_CONFIGURATION_H_ */
Definition: Message.h:42
Definition: ReaderConfiguration.h:48
void setReceiverQueueSize(int size)
bool hasProperty(const std::string &name) const
void setUnAckedMessagesTimeoutMs(const uint64_t milliSeconds)
ReaderConfiguration & setProperties(const std::map< std::string, std::string > &properties)
long getTickDurationInMs() const
void setTickDurationInMs(const uint64_t milliSeconds)
void setSubscriptionRolePrefix(const std::string &subscriptionRolePrefix)
long getUnAckedMessagesTimeoutMs() const
ReaderConfiguration & setCryptoKeyReader(CryptoKeyReaderPtr cryptoKeyReader)
const SchemaInfo & getSchema() const
ReaderConfiguration & setCryptoFailureAction(ConsumerCryptoFailureAction action)
void setReaderName(const std::string &readerName)
ReaderConfiguration & setProperty(const std::string &name, const std::string &value)
const std::string & getInternalSubscriptionName() const
std::map< std::string, std::string > & getProperties() const
bool isEncryptionEnabled() const
ReaderListener getReaderListener() const
void setReadCompacted(bool compacted)
const std::string & getProperty(const std::string &name) const
void setAckGroupingTimeMs(long ackGroupingMillis)
ReaderConfiguration & setReaderListener(ReaderListener listener)
ReaderConfiguration & setSchema(const SchemaInfo &schemaInfo)
long getAckGroupingTimeMs() const
const std::string & getReaderName() const
const CryptoKeyReaderPtr getCryptoKeyReader() const
void setInternalSubscriptionName(std::string internalSubscriptionName)
const std::string & getSubscriptionRolePrefix() const
ConsumerCryptoFailureAction getCryptoFailureAction() const
void setAckGroupingMaxSize(long maxGroupingSize)
long getAckGroupingMaxSize() const
Definition: Reader.h:36
Definition: Schema.h:123
Definition: Authentication.h:30
std::function< void(Reader reader, const Message &msg)> ReaderListener
Callback definition for MessageListener.
Definition: ReaderConfiguration.h:41
std::function< void(Result result)> ResultCallback
Callback definition for non-data operation.
Definition: ConsumerConfiguration.h:43
Result
Definition: Result.h:31