blob: d55eb227d2bb7d198e5285944e923f388a27eb8e [file] [log] [blame]
Per Grön9aeeddf2017-05-12 18:48:17 +02001// Generated by the gRPC C++ plugin.
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -07002// If you make any local change, they will be lost.
3// source: monster_test
4#ifndef GRPC_monster_5ftest__INCLUDED
5#define GRPC_monster_5ftest__INCLUDED
6
CarsarSky69dc71b2016-12-29 03:50:41 +08007#include "flatbuffers/grpc.h"
Per Grön9aeeddf2017-05-12 18:48:17 +02008#include "monster_test_generated.h"
CarsarSky69dc71b2016-12-29 03:50:41 +08009
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070010#include <grpc++/impl/codegen/async_stream.h>
11#include <grpc++/impl/codegen/async_unary_call.h>
Per Grön9aeeddf2017-05-12 18:48:17 +020012#include <grpc++/impl/codegen/method_handler_impl.h>
13#include <grpc++/impl/codegen/proto_utils.h>
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070014#include <grpc++/impl/codegen/rpc_method.h>
15#include <grpc++/impl/codegen/service_type.h>
16#include <grpc++/impl/codegen/status.h>
17#include <grpc++/impl/codegen/stub_options.h>
18#include <grpc++/impl/codegen/sync_stream.h>
19
20namespace grpc {
21class CompletionQueue;
22class Channel;
23class RpcService;
24class ServerCompletionQueue;
25class ServerContext;
26} // namespace grpc
27
28namespace MyGame {
29namespace Example {
30
Per Grön9aeeddf2017-05-12 18:48:17 +020031class MonsterStorage final {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070032 public:
Per Grön9aeeddf2017-05-12 18:48:17 +020033 static constexpr char const* service_full_name() {
34 return "MyGame.Example.MonsterStorage";
35 }
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070036 class StubInterface {
37 public:
38 virtual ~StubInterface() {}
Lawrence Chan6a7ec852017-05-12 16:36:35 -050039 virtual ::grpc::Status Store(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, flatbuffers::BufferRef<Stat>* response) = 0;
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070040 std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< flatbuffers::BufferRef<Stat>>> AsyncStore(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, ::grpc::CompletionQueue* cq) {
41 return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< flatbuffers::BufferRef<Stat>>>(AsyncStoreRaw(context, request, cq));
42 }
Lawrence Chan6a7ec852017-05-12 16:36:35 -050043 std::unique_ptr< ::grpc::ClientReaderInterface< flatbuffers::BufferRef<Monster>>> Retrieve(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request) {
CarsarSky69dc71b2016-12-29 03:50:41 +080044 return std::unique_ptr< ::grpc::ClientReaderInterface< flatbuffers::BufferRef<Monster>>>(RetrieveRaw(context, request));
45 }
46 std::unique_ptr< ::grpc::ClientAsyncReaderInterface< flatbuffers::BufferRef<Monster>>> AsyncRetrieve(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request, ::grpc::CompletionQueue* cq, void* tag) {
47 return std::unique_ptr< ::grpc::ClientAsyncReaderInterface< flatbuffers::BufferRef<Monster>>>(AsyncRetrieveRaw(context, request, cq, tag));
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070048 }
Lawrence Chan6a7ec852017-05-12 16:36:35 -050049 private:
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070050 virtual ::grpc::ClientAsyncResponseReaderInterface< flatbuffers::BufferRef<Stat>>* AsyncStoreRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, ::grpc::CompletionQueue* cq) = 0;
CarsarSky69dc71b2016-12-29 03:50:41 +080051 virtual ::grpc::ClientReaderInterface< flatbuffers::BufferRef<Monster>>* RetrieveRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request) = 0;
52 virtual ::grpc::ClientAsyncReaderInterface< flatbuffers::BufferRef<Monster>>* AsyncRetrieveRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request, ::grpc::CompletionQueue* cq, void* tag) = 0;
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070053 };
Per Grön9aeeddf2017-05-12 18:48:17 +020054 class Stub final : public StubInterface {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070055 public:
56 Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel);
Per Grön9aeeddf2017-05-12 18:48:17 +020057 ::grpc::Status Store(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, flatbuffers::BufferRef<Stat>* response) override;
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070058 std::unique_ptr< ::grpc::ClientAsyncResponseReader< flatbuffers::BufferRef<Stat>>> AsyncStore(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, ::grpc::CompletionQueue* cq) {
59 return std::unique_ptr< ::grpc::ClientAsyncResponseReader< flatbuffers::BufferRef<Stat>>>(AsyncStoreRaw(context, request, cq));
60 }
CarsarSky69dc71b2016-12-29 03:50:41 +080061 std::unique_ptr< ::grpc::ClientReader< flatbuffers::BufferRef<Monster>>> Retrieve(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request) {
62 return std::unique_ptr< ::grpc::ClientReader< flatbuffers::BufferRef<Monster>>>(RetrieveRaw(context, request));
63 }
64 std::unique_ptr< ::grpc::ClientAsyncReader< flatbuffers::BufferRef<Monster>>> AsyncRetrieve(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request, ::grpc::CompletionQueue* cq, void* tag) {
65 return std::unique_ptr< ::grpc::ClientAsyncReader< flatbuffers::BufferRef<Monster>>>(AsyncRetrieveRaw(context, request, cq, tag));
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070066 }
67
68 private:
69 std::shared_ptr< ::grpc::ChannelInterface> channel_;
Per Grön9aeeddf2017-05-12 18:48:17 +020070 ::grpc::ClientAsyncResponseReader< flatbuffers::BufferRef<Stat>>* AsyncStoreRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Monster>& request, ::grpc::CompletionQueue* cq) override;
71 ::grpc::ClientReader< flatbuffers::BufferRef<Monster>>* RetrieveRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request) override;
72 ::grpc::ClientAsyncReader< flatbuffers::BufferRef<Monster>>* AsyncRetrieveRaw(::grpc::ClientContext* context, const flatbuffers::BufferRef<Stat>& request, ::grpc::CompletionQueue* cq, void* tag) override;
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070073 const ::grpc::RpcMethod rpcmethod_Store_;
74 const ::grpc::RpcMethod rpcmethod_Retrieve_;
75 };
76 static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
77
78 class Service : public ::grpc::Service {
79 public:
80 Service();
81 virtual ~Service();
Lawrence Chan6a7ec852017-05-12 16:36:35 -050082 virtual ::grpc::Status Store(::grpc::ServerContext* context, const flatbuffers::BufferRef<Monster>* request, flatbuffers::BufferRef<Stat>* response);
83 virtual ::grpc::Status Retrieve(::grpc::ServerContext* context, const flatbuffers::BufferRef<Stat>* request, ::grpc::ServerWriter< flatbuffers::BufferRef<Monster>>* writer);
84 };
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070085 template <class BaseClass>
86 class WithAsyncMethod_Store : public BaseClass {
87 private:
88 void BaseClassMustBeDerivedFromService(const Service *service) {}
89 public:
90 WithAsyncMethod_Store() {
91 ::grpc::Service::MarkMethodAsync(0);
92 }
Per Grön9aeeddf2017-05-12 18:48:17 +020093 ~WithAsyncMethod_Store() override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070094 BaseClassMustBeDerivedFromService(this);
95 }
96 // disable synchronous version of this method
Per Grön9aeeddf2017-05-12 18:48:17 +020097 ::grpc::Status Store(::grpc::ServerContext* context, const flatbuffers::BufferRef<Monster>* request, flatbuffers::BufferRef<Stat>* response) final override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -070098 abort();
99 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
100 }
101 void RequestStore(::grpc::ServerContext* context, flatbuffers::BufferRef<Monster>* request, ::grpc::ServerAsyncResponseWriter< flatbuffers::BufferRef<Stat>>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
102 ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag);
103 }
104 };
105 template <class BaseClass>
106 class WithAsyncMethod_Retrieve : public BaseClass {
107 private:
108 void BaseClassMustBeDerivedFromService(const Service *service) {}
109 public:
110 WithAsyncMethod_Retrieve() {
111 ::grpc::Service::MarkMethodAsync(1);
112 }
Per Grön9aeeddf2017-05-12 18:48:17 +0200113 ~WithAsyncMethod_Retrieve() override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700114 BaseClassMustBeDerivedFromService(this);
115 }
116 // disable synchronous version of this method
Per Grön9aeeddf2017-05-12 18:48:17 +0200117 ::grpc::Status Retrieve(::grpc::ServerContext* context, const flatbuffers::BufferRef<Stat>* request, ::grpc::ServerWriter< flatbuffers::BufferRef<Monster>>* writer) final override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700118 abort();
119 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
120 }
CarsarSky69dc71b2016-12-29 03:50:41 +0800121 void RequestRetrieve(::grpc::ServerContext* context, flatbuffers::BufferRef<Stat>* request, ::grpc::ServerAsyncWriter< flatbuffers::BufferRef<Monster>>* writer, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
122 ::grpc::Service::RequestAsyncServerStreaming(1, context, request, writer, new_call_cq, notification_cq, tag);
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700123 }
124 };
125 typedef WithAsyncMethod_Store< WithAsyncMethod_Retrieve< Service > > AsyncService;
126 template <class BaseClass>
127 class WithGenericMethod_Store : public BaseClass {
128 private:
129 void BaseClassMustBeDerivedFromService(const Service *service) {}
130 public:
131 WithGenericMethod_Store() {
132 ::grpc::Service::MarkMethodGeneric(0);
133 }
Per Grön9aeeddf2017-05-12 18:48:17 +0200134 ~WithGenericMethod_Store() override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700135 BaseClassMustBeDerivedFromService(this);
136 }
137 // disable synchronous version of this method
Per Grön9aeeddf2017-05-12 18:48:17 +0200138 ::grpc::Status Store(::grpc::ServerContext* context, const flatbuffers::BufferRef<Monster>* request, flatbuffers::BufferRef<Stat>* response) final override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700139 abort();
140 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
141 }
142 };
143 template <class BaseClass>
144 class WithGenericMethod_Retrieve : public BaseClass {
145 private:
146 void BaseClassMustBeDerivedFromService(const Service *service) {}
147 public:
148 WithGenericMethod_Retrieve() {
149 ::grpc::Service::MarkMethodGeneric(1);
150 }
Per Grön9aeeddf2017-05-12 18:48:17 +0200151 ~WithGenericMethod_Retrieve() override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700152 BaseClassMustBeDerivedFromService(this);
153 }
154 // disable synchronous version of this method
Per Grön9aeeddf2017-05-12 18:48:17 +0200155 ::grpc::Status Retrieve(::grpc::ServerContext* context, const flatbuffers::BufferRef<Stat>* request, ::grpc::ServerWriter< flatbuffers::BufferRef<Monster>>* writer) final override {
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700156 abort();
157 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
158 }
159 };
Per Grön9aeeddf2017-05-12 18:48:17 +0200160 template <class BaseClass>
161 class WithStreamedUnaryMethod_Store : public BaseClass {
162 private:
163 void BaseClassMustBeDerivedFromService(const Service *service) {}
164 public:
165 WithStreamedUnaryMethod_Store() {
166 ::grpc::Service::MarkMethodStreamed(0,
167 new ::grpc::StreamedUnaryHandler< flatbuffers::BufferRef<Monster>, flatbuffers::BufferRef<Stat>>(std::bind(&WithStreamedUnaryMethod_Store<BaseClass>::StreamedStore, this, std::placeholders::_1, std::placeholders::_2)));
168 }
169 ~WithStreamedUnaryMethod_Store() override {
170 BaseClassMustBeDerivedFromService(this);
171 }
172 // disable regular version of this method
173 ::grpc::Status Store(::grpc::ServerContext* context, const flatbuffers::BufferRef<Monster>* request, flatbuffers::BufferRef<Stat>* response) final override {
174 abort();
175 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
176 }
177 // replace default version of method with streamed unary
178 virtual ::grpc::Status StreamedStore(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< flatbuffers::BufferRef<Monster>,flatbuffers::BufferRef<Stat>>* server_unary_streamer) = 0;
179 };
180 typedef WithStreamedUnaryMethod_Store< Service > StreamedUnaryService;
181 template <class BaseClass>
182 class WithSplitStreamingMethod_Retrieve : public BaseClass {
183 private:
184 void BaseClassMustBeDerivedFromService(const Service *service) {}
185 public:
186 WithSplitStreamingMethod_Retrieve() {
187 ::grpc::Service::MarkMethodStreamed(1,
188 new ::grpc::SplitServerStreamingHandler< flatbuffers::BufferRef<Stat>, flatbuffers::BufferRef<Monster>>(std::bind(&WithSplitStreamingMethod_Retrieve<BaseClass>::StreamedRetrieve, this, std::placeholders::_1, std::placeholders::_2)));
189 }
190 ~WithSplitStreamingMethod_Retrieve() override {
191 BaseClassMustBeDerivedFromService(this);
192 }
193 // disable regular version of this method
194 ::grpc::Status Retrieve(::grpc::ServerContext* context, const flatbuffers::BufferRef<Stat>* request, ::grpc::ServerWriter< flatbuffers::BufferRef<Monster>>* writer) final override {
195 abort();
196 return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
197 }
198 // replace default version of method with split streamed
199 virtual ::grpc::Status StreamedRetrieve(::grpc::ServerContext* context, ::grpc::ServerSplitStreamer< flatbuffers::BufferRef<Stat>,flatbuffers::BufferRef<Monster>>* server_split_streamer) = 0;
200 };
201 typedef WithSplitStreamingMethod_Retrieve< Service > SplitStreamedService;
202 typedef WithStreamedUnaryMethod_Store< WithSplitStreamingMethod_Retrieve< Service > > StreamedService;
Wouter van Oortmerssen48f37f92016-04-13 18:16:05 -0700203};
204
205} // namespace Example
206} // namespace MyGame
207
208
209#endif // GRPC_monster_5ftest__INCLUDED