pulsar-client-cpp
BrokerConsumerStats.h
1 
19 #ifndef PULSAR_CPP_BROKERCONSUMERSTATS_H
20 #define PULSAR_CPP_BROKERCONSUMERSTATS_H
21 
22 #include <string.h>
23 #include <iostream>
24 #include <pulsar/Result.h>
25 #include <functional>
26 #include <memory>
27 #include <pulsar/ConsumerType.h>
28 
29 #pragma GCC visibility push(default)
30 namespace pulsar {
31 class BrokerConsumerStatsImplBase;
32 class PulsarWrapper;
33 
34 /* @note: isValid() or getXXX() methods are not allowed on an invalid BrokerConsumerStats */
36  private:
37  std::shared_ptr<BrokerConsumerStatsImplBase> impl_;
38 
39  public:
40  explicit BrokerConsumerStats(std::shared_ptr<BrokerConsumerStatsImplBase> impl);
41 
43 
45  virtual bool isValid() const;
46 
48  virtual double getMsgRateOut() const;
49 
51  virtual double getMsgThroughputOut() const;
52 
54  virtual double getMsgRateRedeliver() const;
55 
57  virtual const std::string getConsumerName() const;
58 
60  virtual uint64_t getAvailablePermits() const;
61 
63  virtual uint64_t getUnackedMessages() const;
64 
66  virtual bool isBlockedConsumerOnUnackedMsgs() const;
67 
69  virtual const std::string getAddress() const;
70 
72  virtual const std::string getConnectedSince() const;
73 
75  virtual const ConsumerType getType() const;
76 
78  virtual double getMsgRateExpired() const;
79 
81  virtual uint64_t getMsgBacklog() const;
82 
84  std::shared_ptr<BrokerConsumerStatsImplBase> getImpl() const;
85 
86  friend class PulsarWrapper;
87  friend std::ostream &operator<<(std::ostream &os, const BrokerConsumerStats &obj);
88 };
89 typedef std::function<void(Result result, BrokerConsumerStats brokerConsumerStats)>
90  BrokerConsumerStatsCallback;
91 } // namespace pulsar
92 
93 #pragma GCC visibility pop
94 
95 #endif // PULSAR_CPP_BROKERCONSUMERSTATS_H
pulsar::BrokerConsumerStats::getMsgRateRedeliver
virtual double getMsgRateRedeliver() const
pulsar::Result
Result
Definition: Result.h:31
pulsar::BrokerConsumerStats::getAddress
virtual const std::string getAddress() const
pulsar::BrokerConsumerStats::getMsgBacklog
virtual uint64_t getMsgBacklog() const
pulsar::BrokerConsumerStats::getImpl
std::shared_ptr< BrokerConsumerStatsImplBase > getImpl() const
pulsar::ConsumerType
ConsumerType
Definition: ConsumerType.h:24
pulsar::BrokerConsumerStats::isValid
virtual bool isValid() const
pulsar::BrokerConsumerStats::getConsumerName
virtual const std::string getConsumerName() const
pulsar::BrokerConsumerStats::getMsgRateOut
virtual double getMsgRateOut() const
pulsar::BrokerConsumerStats
Definition: BrokerConsumerStats.h:35
pulsar::BrokerConsumerStats::getType
virtual const ConsumerType getType() const
pulsar::BrokerConsumerStats::getConnectedSince
virtual const std::string getConnectedSince() const
pulsar
Definition: Authentication.h:31
pulsar::BrokerConsumerStats::getMsgThroughputOut
virtual double getMsgThroughputOut() const
pulsar::BrokerConsumerStats::isBlockedConsumerOnUnackedMsgs
virtual bool isBlockedConsumerOnUnackedMsgs() const
pulsar::BrokerConsumerStats::getAvailablePermits
virtual uint64_t getAvailablePermits() const
pulsar::BrokerConsumerStats::getUnackedMessages
virtual uint64_t getUnackedMessages() const
pulsar::BrokerConsumerStats::getMsgRateExpired
virtual double getMsgRateExpired() const