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/tserver/tserver_forward_service.service.h
Line
Count
Source (jump to first uncovered line)
1
// THIS FILE IS AUTOGENERATED FROM yb/tserver/tserver_forward_service.proto
2
3
#pragma once
4
5
#include "yb/tserver/tserver_forward_service.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 tserver {
21
22
enum class TabletServerForwardServiceRpcMethodIndexes {
23
  kWrite,
24
  kRead,
25
}; // enum
26
27
class TabletServerForwardServiceIf : public ::yb::rpc::ServiceIf {
28
 public:
29
  explicit TabletServerForwardServiceIf(const scoped_refptr<MetricEntity>& entity);
30
  virtual ~TabletServerForwardServiceIf();
31
  void Handle(::yb::rpc::InboundCallPtr call) override;
32
  void FillEndpoints(const ::yb::rpc::RpcServicePtr& service, ::yb::rpc::RpcEndpointMap* map) override;
33
  std::string service_name() const override;
34
  static std::string static_service_name();
35
36
  virtual void Write(
37
      const ::yb::tserver::WriteRequestPB* req,
38
      ::yb::tserver::WriteResponsePB* resp,
39
      ::yb::rpc::RpcContext context) = 0;
40
  virtual void Read(
41
      const ::yb::tserver::ReadRequestPB* req,
42
      ::yb::tserver::ReadResponsePB* resp,
43
      ::yb::rpc::RpcContext context) = 0;
44
  
45
0
  ::yb::rpc::RpcMethodMetrics GetMetric(TabletServerForwardServiceRpcMethodIndexes index) {
46
0
    return methods_[static_cast<size_t>(index)].metrics;
47
0
  }
48
49
 private:
50
  static const int kMethodCount = 2;
51
52
  // Pre-initialize metrics because calling METRIC_foo.Instantiate() is expensive.
53
  void InitMethods(const scoped_refptr<MetricEntity>& ent);
54
55
  ::yb::rpc::RpcMethodDesc methods_[kMethodCount];
56
};
57
58
} // namespace tserver
59
} // namespace yb
60