YugabyteDB (2.13.1.0-b60, 21121d69985fbf76aa6958d8f04a9bfa936293b5)

Coverage Report

Created: 2022-03-22 16:43

/Users/deen/code/yugabyte-db/build/debugcov-clang-dynamic-arm64-ninja/src/yb/master/master_replication.service.h
Line
Count
Source (jump to first uncovered line)
1
// THIS FILE IS AUTOGENERATED FROM yb/master/master_replication.proto
2
3
#pragma once
4
5
#include "yb/master/master_replication.pb.h"
6
7
#include <string>
8
9
#include "yb/rpc/rpc_fwd.h"
10
#include "yb/rpc/rpc_header.pb.h"
11
#include "yb/rpc/service_if.h"
12
13
#include "yb/util/monotime.h"
14
15
namespace yb {
16
class MetricEntity;
17
} // namespace yb
18
19
namespace yb {
20
namespace master {
21
22
enum class MasterReplicationRpcMethodIndexes {
23
  kValidateReplicationInfo,
24
  kCreateCDCStream,
25
  kDeleteCDCStream,
26
  kListCDCStreams,
27
  kGetCDCStream,
28
  kGetCDCDBStreamInfo,
29
  kUpdateCDCStream,
30
  kSetupUniverseReplication,
31
  kDeleteUniverseReplication,
32
  kAlterUniverseReplication,
33
  kSetUniverseReplicationEnabled,
34
  kGetUniverseReplication,
35
  kIsSetupUniverseReplicationDone,
36
  kUpdateConsumerOnProducerSplit,
37
}; // enum
38
39
class MasterReplicationIf : public ::yb::rpc::ServiceIf {
40
 public:
41
  explicit MasterReplicationIf(const scoped_refptr<MetricEntity>& entity);
42
  virtual ~MasterReplicationIf();
43
  void Handle(::yb::rpc::InboundCallPtr call) override;
44
  void FillEndpoints(const ::yb::rpc::RpcServicePtr& service, ::yb::rpc::RpcEndpointMap* map) override;
45
  std::string service_name() const override;
46
  static std::string static_service_name();
47
48
  virtual void ValidateReplicationInfo(
49
      const ::yb::master::ValidateReplicationInfoRequestPB* req,
50
      ::yb::master::ValidateReplicationInfoResponsePB* resp,
51
      ::yb::rpc::RpcContext context) = 0;
52
  virtual void CreateCDCStream(
53
      const ::yb::master::CreateCDCStreamRequestPB* req,
54
      ::yb::master::CreateCDCStreamResponsePB* resp,
55
      ::yb::rpc::RpcContext context) = 0;
56
  virtual void DeleteCDCStream(
57
      const ::yb::master::DeleteCDCStreamRequestPB* req,
58
      ::yb::master::DeleteCDCStreamResponsePB* resp,
59
      ::yb::rpc::RpcContext context) = 0;
60
  virtual void ListCDCStreams(
61
      const ::yb::master::ListCDCStreamsRequestPB* req,
62
      ::yb::master::ListCDCStreamsResponsePB* resp,
63
      ::yb::rpc::RpcContext context) = 0;
64
  virtual void GetCDCStream(
65
      const ::yb::master::GetCDCStreamRequestPB* req,
66
      ::yb::master::GetCDCStreamResponsePB* resp,
67
      ::yb::rpc::RpcContext context) = 0;
68
  virtual void GetCDCDBStreamInfo(
69
      const ::yb::master::GetCDCDBStreamInfoRequestPB* req,
70
      ::yb::master::GetCDCDBStreamInfoResponsePB* resp,
71
      ::yb::rpc::RpcContext context) = 0;
72
  virtual void UpdateCDCStream(
73
      const ::yb::master::UpdateCDCStreamRequestPB* req,
74
      ::yb::master::UpdateCDCStreamResponsePB* resp,
75
      ::yb::rpc::RpcContext context) = 0;
76
  virtual void SetupUniverseReplication(
77
      const ::yb::master::SetupUniverseReplicationRequestPB* req,
78
      ::yb::master::SetupUniverseReplicationResponsePB* resp,
79
      ::yb::rpc::RpcContext context) = 0;
80
  virtual void DeleteUniverseReplication(
81
      const ::yb::master::DeleteUniverseReplicationRequestPB* req,
82
      ::yb::master::DeleteUniverseReplicationResponsePB* resp,
83
      ::yb::rpc::RpcContext context) = 0;
84
  virtual void AlterUniverseReplication(
85
      const ::yb::master::AlterUniverseReplicationRequestPB* req,
86
      ::yb::master::AlterUniverseReplicationResponsePB* resp,
87
      ::yb::rpc::RpcContext context) = 0;
88
  virtual void SetUniverseReplicationEnabled(
89
      const ::yb::master::SetUniverseReplicationEnabledRequestPB* req,
90
      ::yb::master::SetUniverseReplicationEnabledResponsePB* resp,
91
      ::yb::rpc::RpcContext context) = 0;
92
  virtual void GetUniverseReplication(
93
      const ::yb::master::GetUniverseReplicationRequestPB* req,
94
      ::yb::master::GetUniverseReplicationResponsePB* resp,
95
      ::yb::rpc::RpcContext context) = 0;
96
  virtual void IsSetupUniverseReplicationDone(
97
      const ::yb::master::IsSetupUniverseReplicationDoneRequestPB* req,
98
      ::yb::master::IsSetupUniverseReplicationDoneResponsePB* resp,
99
      ::yb::rpc::RpcContext context) = 0;
100
  virtual void UpdateConsumerOnProducerSplit(
101
      const ::yb::master::UpdateConsumerOnProducerSplitRequestPB* req,
102
      ::yb::master::UpdateConsumerOnProducerSplitResponsePB* resp,
103
      ::yb::rpc::RpcContext context) = 0;
104
  
105
0
  ::yb::rpc::RpcMethodMetrics GetMetric(MasterReplicationRpcMethodIndexes index) {
106
0
    return methods_[static_cast<size_t>(index)].metrics;
107
0
  }
108
109
 private:
110
  static const int kMethodCount = 14;
111
112
  // Pre-initialize metrics because calling METRIC_foo.Instantiate() is expensive.
113
  void InitMethods(const scoped_refptr<MetricEntity>& ent);
114
115
  ::yb::rpc::RpcMethodDesc methods_[kMethodCount];
116
};
117
118
} // namespace master
119
} // namespace yb
120