19#ifndef PULSAR_CLIENT_HPP_
20#define PULSAR_CLIENT_HPP_
22#include <pulsar/defines.h>
23#include <pulsar/Consumer.h>
24#include <pulsar/Producer.h>
25#include <pulsar/Reader.h>
26#include <pulsar/Result.h>
27#include <pulsar/Message.h>
28#include <pulsar/MessageBuilder.h>
29#include <pulsar/ClientConfiguration.h>
30#include <pulsar/Schema.h>
31#include <pulsar/ConsoleLoggerFactory.h>
32#include <pulsar/FileLoggerFactory.h>
36typedef std::function<void(
Result, Producer)> CreateProducerCallback;
37typedef std::function<void(
Result, Consumer)> SubscribeCallback;
38typedef std::function<void(
Result, Reader)> ReaderCallback;
39typedef std::function<void(
Result,
const std::vector<std::string>&)> GetPartitionsCallback;
40typedef std::function<void(
Result)> CloseCallback;
54 Client(
const std::string& serviceUrl);
109 CreateProducerCallback callback);
141 void subscribeAsync(
const std::string& topic,
const std::string& subscriptionName,
142 SubscribeCallback callback);
154 void subscribeAsync(
const std::string& topic,
const std::string& subscriptionName,
164 Result subscribe(
const std::vector<std::string>& topics,
const std::string& subscriptionName,
175 Result subscribe(
const std::vector<std::string>& topics,
const std::string& subscriptionName,
188 void subscribeAsync(
const std::vector<std::string>& topics,
const std::string& subscriptionName,
189 SubscribeCallback callback);
201 void subscribeAsync(
const std::vector<std::string>& topics,
const std::string& subscriptionName,
225 SubscribeCallback callback);
374 bool poolConnections);
375 Client(
const std::shared_ptr<ClientImpl>);
377 friend class PulsarFriend;
378 friend class PulsarWrapper;
379 std::shared_ptr<ClientImpl> impl_;
Definition: ClientConfiguration.h:29
Result subscribeWithRegex(const std::string ®exPattern, const std::string &subscriptionName, Consumer &consumer)
Result subscribeWithRegex(const std::string ®exPattern, const std::string &subscriptionName, const ConsumerConfiguration &conf, Consumer &consumer)
uint64_t getNumberOfConsumers()
Get the number of alive consumers on the current client.
Result subscribe(const std::string &topic, const std::string &subscriptionName, const ConsumerConfiguration &conf, Consumer &consumer)
Client(const std::string &serviceUrl, const ClientConfiguration &clientConfiguration)
Result getPartitionsForTopic(const std::string &topic, std::vector< std::string > &partitions)
void getPartitionsForTopicAsync(const std::string &topic, GetPartitionsCallback callback)
void subscribeAsync(const std::vector< std::string > &topics, const std::string &subscriptionName, SubscribeCallback callback)
void createProducerAsync(const std::string &topic, ProducerConfiguration conf, CreateProducerCallback callback)
void subscribeWithRegexAsync(const std::string ®exPattern, const std::string &subscriptionName, SubscribeCallback callback)
uint64_t getNumberOfProducers()
Get the number of alive producers on the current client.
void subscribeAsync(const std::string &topic, const std::string &subscriptionName, SubscribeCallback callback)
void createProducerAsync(const std::string &topic, CreateProducerCallback callback)
void subscribeAsync(const std::string &topic, const std::string &subscriptionName, const ConsumerConfiguration &conf, SubscribeCallback callback)
Result subscribe(const std::vector< std::string > &topics, const std::string &subscriptionName, const ConsumerConfiguration &conf, Consumer &consumer)
Result createProducer(const std::string &topic, Producer &producer)
Result subscribe(const std::string &topic, const std::string &subscriptionName, Consumer &consumer)
Result createProducer(const std::string &topic, const ProducerConfiguration &conf, Producer &producer)
void createReaderAsync(const std::string &topic, const MessageId &startMessageId, const ReaderConfiguration &conf, ReaderCallback callback)
void subscribeWithRegexAsync(const std::string ®exPattern, const std::string &subscriptionName, const ConsumerConfiguration &conf, SubscribeCallback callback)
Client(const std::string &serviceUrl)
void closeAsync(CloseCallback callback)
Result createReader(const std::string &topic, const MessageId &startMessageId, const ReaderConfiguration &conf, Reader &reader)
Result subscribe(const std::vector< std::string > &topics, const std::string &subscriptionName, Consumer &consumer)
void subscribeAsync(const std::vector< std::string > &topics, const std::string &subscriptionName, const ConsumerConfiguration &conf, SubscribeCallback callback)
Definition: ConsumerConfiguration.h:51
Definition: Consumer.h:35
Definition: MessageId.h:32
Definition: ProducerConfiguration.h:44
Definition: Producer.h:35
Definition: ReaderConfiguration.h:47
Definition: Authentication.h:30
Result
Definition: Result.h:31