protobuf.grpc.pb.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369
  1. // Generated by the gRPC C++ plugin.
  2. // If you make any local change, they will be lost.
  3. // source: protobuf.proto
  4. #ifndef GRPC_protobuf_2eproto__INCLUDED
  5. #define GRPC_protobuf_2eproto__INCLUDED
  6. #include "protobuf.pb.h"
  7. #include <functional>
  8. #include <grpcpp/impl/codegen/async_generic_service.h>
  9. #include <grpcpp/impl/codegen/async_stream.h>
  10. #include <grpcpp/impl/codegen/async_unary_call.h>
  11. #include <grpcpp/impl/codegen/client_callback.h>
  12. #include <grpcpp/impl/codegen/client_context.h>
  13. #include <grpcpp/impl/codegen/completion_queue.h>
  14. #include <grpcpp/impl/codegen/message_allocator.h>
  15. #include <grpcpp/impl/codegen/method_handler.h>
  16. #include <grpcpp/impl/codegen/proto_utils.h>
  17. #include <grpcpp/impl/codegen/rpc_method.h>
  18. #include <grpcpp/impl/codegen/server_callback.h>
  19. #include <grpcpp/impl/codegen/server_callback_handlers.h>
  20. #include <grpcpp/impl/codegen/server_context.h>
  21. #include <grpcpp/impl/codegen/service_type.h>
  22. #include <grpcpp/impl/codegen/status.h>
  23. #include <grpcpp/impl/codegen/stub_options.h>
  24. #include <grpcpp/impl/codegen/sync_stream.h>
  25. namespace namespace_uploadpic {
  26. class upload_pic_servicer final {
  27. public:
  28. static constexpr char const* service_full_name() {
  29. return "namespace_uploadpic.upload_pic_servicer";
  30. }
  31. class StubInterface {
  32. public:
  33. virtual ~StubInterface() {}
  34. std::unique_ptr< ::grpc::ClientWriterInterface< ::namespace_uploadpic::ChunkOneLine>> Upload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response) {
  35. return std::unique_ptr< ::grpc::ClientWriterInterface< ::namespace_uploadpic::ChunkOneLine>>(UploadRaw(context, response));
  36. }
  37. std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>> AsyncUpload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq, void* tag) {
  38. return std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>>(AsyncUploadRaw(context, response, cq, tag));
  39. }
  40. std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>> PrepareAsyncUpload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq) {
  41. return std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>>(PrepareAsyncUploadRaw(context, response, cq));
  42. }
  43. std::unique_ptr< ::grpc::ClientReaderInterface< ::namespace_uploadpic::Response>> ListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request) {
  44. return std::unique_ptr< ::grpc::ClientReaderInterface< ::namespace_uploadpic::Response>>(ListFeaturesRaw(context, request));
  45. }
  46. std::unique_ptr< ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>> AsyncListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq, void* tag) {
  47. return std::unique_ptr< ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>>(AsyncListFeaturesRaw(context, request, cq, tag));
  48. }
  49. std::unique_ptr< ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>> PrepareAsyncListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq) {
  50. return std::unique_ptr< ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>>(PrepareAsyncListFeaturesRaw(context, request, cq));
  51. }
  52. class async_interface {
  53. public:
  54. virtual ~async_interface() {}
  55. virtual void Upload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::ClientWriteReactor< ::namespace_uploadpic::ChunkOneLine>* reactor) = 0;
  56. virtual void ListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request* request, ::grpc::ClientReadReactor< ::namespace_uploadpic::Response>* reactor) = 0;
  57. };
  58. typedef class async_interface experimental_async_interface;
  59. virtual class async_interface* async() { return nullptr; }
  60. class async_interface* experimental_async() { return async(); }
  61. private:
  62. virtual ::grpc::ClientWriterInterface< ::namespace_uploadpic::ChunkOneLine>* UploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response) = 0;
  63. virtual ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>* AsyncUploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq, void* tag) = 0;
  64. virtual ::grpc::ClientAsyncWriterInterface< ::namespace_uploadpic::ChunkOneLine>* PrepareAsyncUploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq) = 0;
  65. virtual ::grpc::ClientReaderInterface< ::namespace_uploadpic::Response>* ListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request) = 0;
  66. virtual ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>* AsyncListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq, void* tag) = 0;
  67. virtual ::grpc::ClientAsyncReaderInterface< ::namespace_uploadpic::Response>* PrepareAsyncListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq) = 0;
  68. };
  69. class Stub final : public StubInterface {
  70. public:
  71. Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
  72. std::unique_ptr< ::grpc::ClientWriter< ::namespace_uploadpic::ChunkOneLine>> Upload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response) {
  73. return std::unique_ptr< ::grpc::ClientWriter< ::namespace_uploadpic::ChunkOneLine>>(UploadRaw(context, response));
  74. }
  75. std::unique_ptr< ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>> AsyncUpload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq, void* tag) {
  76. return std::unique_ptr< ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>>(AsyncUploadRaw(context, response, cq, tag));
  77. }
  78. std::unique_ptr< ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>> PrepareAsyncUpload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq) {
  79. return std::unique_ptr< ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>>(PrepareAsyncUploadRaw(context, response, cq));
  80. }
  81. std::unique_ptr< ::grpc::ClientReader< ::namespace_uploadpic::Response>> ListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request) {
  82. return std::unique_ptr< ::grpc::ClientReader< ::namespace_uploadpic::Response>>(ListFeaturesRaw(context, request));
  83. }
  84. std::unique_ptr< ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>> AsyncListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq, void* tag) {
  85. return std::unique_ptr< ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>>(AsyncListFeaturesRaw(context, request, cq, tag));
  86. }
  87. std::unique_ptr< ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>> PrepareAsyncListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq) {
  88. return std::unique_ptr< ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>>(PrepareAsyncListFeaturesRaw(context, request, cq));
  89. }
  90. class async final :
  91. public StubInterface::async_interface {
  92. public:
  93. void Upload(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::ClientWriteReactor< ::namespace_uploadpic::ChunkOneLine>* reactor) override;
  94. void ListFeatures(::grpc::ClientContext* context, const ::namespace_uploadpic::Request* request, ::grpc::ClientReadReactor< ::namespace_uploadpic::Response>* reactor) override;
  95. private:
  96. friend class Stub;
  97. explicit async(Stub* stub): stub_(stub) { }
  98. Stub* stub() { return stub_; }
  99. Stub* stub_;
  100. };
  101. class async* async() override { return &async_stub_; }
  102. private:
  103. std::shared_ptr< ::grpc::ChannelInterface> channel_;
  104. class async async_stub_{this};
  105. ::grpc::ClientWriter< ::namespace_uploadpic::ChunkOneLine>* UploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response) override;
  106. ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>* AsyncUploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq, void* tag) override;
  107. ::grpc::ClientAsyncWriter< ::namespace_uploadpic::ChunkOneLine>* PrepareAsyncUploadRaw(::grpc::ClientContext* context, ::namespace_uploadpic::Reply* response, ::grpc::CompletionQueue* cq) override;
  108. ::grpc::ClientReader< ::namespace_uploadpic::Response>* ListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request) override;
  109. ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>* AsyncListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq, void* tag) override;
  110. ::grpc::ClientAsyncReader< ::namespace_uploadpic::Response>* PrepareAsyncListFeaturesRaw(::grpc::ClientContext* context, const ::namespace_uploadpic::Request& request, ::grpc::CompletionQueue* cq) override;
  111. const ::grpc::internal::RpcMethod rpcmethod_Upload_;
  112. const ::grpc::internal::RpcMethod rpcmethod_ListFeatures_;
  113. };
  114. static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
  115. class Service : public ::grpc::Service {
  116. public:
  117. Service();
  118. virtual ~Service();
  119. virtual ::grpc::Status Upload(::grpc::ServerContext* context, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* reader, ::namespace_uploadpic::Reply* response);
  120. virtual ::grpc::Status ListFeatures(::grpc::ServerContext* context, const ::namespace_uploadpic::Request* request, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* writer);
  121. };
  122. template <class BaseClass>
  123. class WithAsyncMethod_Upload : public BaseClass {
  124. private:
  125. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  126. public:
  127. WithAsyncMethod_Upload() {
  128. ::grpc::Service::MarkMethodAsync(0);
  129. }
  130. ~WithAsyncMethod_Upload() override {
  131. BaseClassMustBeDerivedFromService(this);
  132. }
  133. // disable synchronous version of this method
  134. ::grpc::Status Upload(::grpc::ServerContext* /*context*/, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* /*reader*/, ::namespace_uploadpic::Reply* /*response*/) override {
  135. abort();
  136. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  137. }
  138. void RequestUpload(::grpc::ServerContext* context, ::grpc::ServerAsyncReader< ::namespace_uploadpic::Reply, ::namespace_uploadpic::ChunkOneLine>* reader, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
  139. ::grpc::Service::RequestAsyncClientStreaming(0, context, reader, new_call_cq, notification_cq, tag);
  140. }
  141. };
  142. template <class BaseClass>
  143. class WithAsyncMethod_ListFeatures : public BaseClass {
  144. private:
  145. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  146. public:
  147. WithAsyncMethod_ListFeatures() {
  148. ::grpc::Service::MarkMethodAsync(1);
  149. }
  150. ~WithAsyncMethod_ListFeatures() override {
  151. BaseClassMustBeDerivedFromService(this);
  152. }
  153. // disable synchronous version of this method
  154. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  155. abort();
  156. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  157. }
  158. void RequestListFeatures(::grpc::ServerContext* context, ::namespace_uploadpic::Request* request, ::grpc::ServerAsyncWriter< ::namespace_uploadpic::Response>* writer, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
  159. ::grpc::Service::RequestAsyncServerStreaming(1, context, request, writer, new_call_cq, notification_cq, tag);
  160. }
  161. };
  162. typedef WithAsyncMethod_Upload<WithAsyncMethod_ListFeatures<Service > > AsyncService;
  163. template <class BaseClass>
  164. class WithCallbackMethod_Upload : public BaseClass {
  165. private:
  166. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  167. public:
  168. WithCallbackMethod_Upload() {
  169. ::grpc::Service::MarkMethodCallback(0,
  170. new ::grpc::internal::CallbackClientStreamingHandler< ::namespace_uploadpic::ChunkOneLine, ::namespace_uploadpic::Reply>(
  171. [this](
  172. ::grpc::CallbackServerContext* context, ::namespace_uploadpic::Reply* response) { return this->Upload(context, response); }));
  173. }
  174. ~WithCallbackMethod_Upload() override {
  175. BaseClassMustBeDerivedFromService(this);
  176. }
  177. // disable synchronous version of this method
  178. ::grpc::Status Upload(::grpc::ServerContext* /*context*/, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* /*reader*/, ::namespace_uploadpic::Reply* /*response*/) override {
  179. abort();
  180. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  181. }
  182. virtual ::grpc::ServerReadReactor< ::namespace_uploadpic::ChunkOneLine>* Upload(
  183. ::grpc::CallbackServerContext* /*context*/, ::namespace_uploadpic::Reply* /*response*/) { return nullptr; }
  184. };
  185. template <class BaseClass>
  186. class WithCallbackMethod_ListFeatures : public BaseClass {
  187. private:
  188. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  189. public:
  190. WithCallbackMethod_ListFeatures() {
  191. ::grpc::Service::MarkMethodCallback(1,
  192. new ::grpc::internal::CallbackServerStreamingHandler< ::namespace_uploadpic::Request, ::namespace_uploadpic::Response>(
  193. [this](
  194. ::grpc::CallbackServerContext* context, const ::namespace_uploadpic::Request* request) { return this->ListFeatures(context, request); }));
  195. }
  196. ~WithCallbackMethod_ListFeatures() override {
  197. BaseClassMustBeDerivedFromService(this);
  198. }
  199. // disable synchronous version of this method
  200. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  201. abort();
  202. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  203. }
  204. virtual ::grpc::ServerWriteReactor< ::namespace_uploadpic::Response>* ListFeatures(
  205. ::grpc::CallbackServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/) { return nullptr; }
  206. };
  207. typedef WithCallbackMethod_Upload<WithCallbackMethod_ListFeatures<Service > > CallbackService;
  208. typedef CallbackService ExperimentalCallbackService;
  209. template <class BaseClass>
  210. class WithGenericMethod_Upload : public BaseClass {
  211. private:
  212. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  213. public:
  214. WithGenericMethod_Upload() {
  215. ::grpc::Service::MarkMethodGeneric(0);
  216. }
  217. ~WithGenericMethod_Upload() override {
  218. BaseClassMustBeDerivedFromService(this);
  219. }
  220. // disable synchronous version of this method
  221. ::grpc::Status Upload(::grpc::ServerContext* /*context*/, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* /*reader*/, ::namespace_uploadpic::Reply* /*response*/) override {
  222. abort();
  223. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  224. }
  225. };
  226. template <class BaseClass>
  227. class WithGenericMethod_ListFeatures : public BaseClass {
  228. private:
  229. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  230. public:
  231. WithGenericMethod_ListFeatures() {
  232. ::grpc::Service::MarkMethodGeneric(1);
  233. }
  234. ~WithGenericMethod_ListFeatures() override {
  235. BaseClassMustBeDerivedFromService(this);
  236. }
  237. // disable synchronous version of this method
  238. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  239. abort();
  240. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  241. }
  242. };
  243. template <class BaseClass>
  244. class WithRawMethod_Upload : public BaseClass {
  245. private:
  246. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  247. public:
  248. WithRawMethod_Upload() {
  249. ::grpc::Service::MarkMethodRaw(0);
  250. }
  251. ~WithRawMethod_Upload() override {
  252. BaseClassMustBeDerivedFromService(this);
  253. }
  254. // disable synchronous version of this method
  255. ::grpc::Status Upload(::grpc::ServerContext* /*context*/, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* /*reader*/, ::namespace_uploadpic::Reply* /*response*/) override {
  256. abort();
  257. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  258. }
  259. void RequestUpload(::grpc::ServerContext* context, ::grpc::ServerAsyncReader< ::grpc::ByteBuffer, ::grpc::ByteBuffer>* reader, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
  260. ::grpc::Service::RequestAsyncClientStreaming(0, context, reader, new_call_cq, notification_cq, tag);
  261. }
  262. };
  263. template <class BaseClass>
  264. class WithRawMethod_ListFeatures : public BaseClass {
  265. private:
  266. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  267. public:
  268. WithRawMethod_ListFeatures() {
  269. ::grpc::Service::MarkMethodRaw(1);
  270. }
  271. ~WithRawMethod_ListFeatures() override {
  272. BaseClassMustBeDerivedFromService(this);
  273. }
  274. // disable synchronous version of this method
  275. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  276. abort();
  277. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  278. }
  279. void RequestListFeatures(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncWriter< ::grpc::ByteBuffer>* writer, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
  280. ::grpc::Service::RequestAsyncServerStreaming(1, context, request, writer, new_call_cq, notification_cq, tag);
  281. }
  282. };
  283. template <class BaseClass>
  284. class WithRawCallbackMethod_Upload : public BaseClass {
  285. private:
  286. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  287. public:
  288. WithRawCallbackMethod_Upload() {
  289. ::grpc::Service::MarkMethodRawCallback(0,
  290. new ::grpc::internal::CallbackClientStreamingHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
  291. [this](
  292. ::grpc::CallbackServerContext* context, ::grpc::ByteBuffer* response) { return this->Upload(context, response); }));
  293. }
  294. ~WithRawCallbackMethod_Upload() override {
  295. BaseClassMustBeDerivedFromService(this);
  296. }
  297. // disable synchronous version of this method
  298. ::grpc::Status Upload(::grpc::ServerContext* /*context*/, ::grpc::ServerReader< ::namespace_uploadpic::ChunkOneLine>* /*reader*/, ::namespace_uploadpic::Reply* /*response*/) override {
  299. abort();
  300. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  301. }
  302. virtual ::grpc::ServerReadReactor< ::grpc::ByteBuffer>* Upload(
  303. ::grpc::CallbackServerContext* /*context*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; }
  304. };
  305. template <class BaseClass>
  306. class WithRawCallbackMethod_ListFeatures : public BaseClass {
  307. private:
  308. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  309. public:
  310. WithRawCallbackMethod_ListFeatures() {
  311. ::grpc::Service::MarkMethodRawCallback(1,
  312. new ::grpc::internal::CallbackServerStreamingHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>(
  313. [this](
  314. ::grpc::CallbackServerContext* context, const::grpc::ByteBuffer* request) { return this->ListFeatures(context, request); }));
  315. }
  316. ~WithRawCallbackMethod_ListFeatures() override {
  317. BaseClassMustBeDerivedFromService(this);
  318. }
  319. // disable synchronous version of this method
  320. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  321. abort();
  322. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  323. }
  324. virtual ::grpc::ServerWriteReactor< ::grpc::ByteBuffer>* ListFeatures(
  325. ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/) { return nullptr; }
  326. };
  327. typedef Service StreamedUnaryService;
  328. template <class BaseClass>
  329. class WithSplitStreamingMethod_ListFeatures : public BaseClass {
  330. private:
  331. void BaseClassMustBeDerivedFromService(const Service* /*service*/) {}
  332. public:
  333. WithSplitStreamingMethod_ListFeatures() {
  334. ::grpc::Service::MarkMethodStreamed(1,
  335. new ::grpc::internal::SplitServerStreamingHandler<
  336. ::namespace_uploadpic::Request, ::namespace_uploadpic::Response>(
  337. [this](::grpc::ServerContext* context,
  338. ::grpc::ServerSplitStreamer<
  339. ::namespace_uploadpic::Request, ::namespace_uploadpic::Response>* streamer) {
  340. return this->StreamedListFeatures(context,
  341. streamer);
  342. }));
  343. }
  344. ~WithSplitStreamingMethod_ListFeatures() override {
  345. BaseClassMustBeDerivedFromService(this);
  346. }
  347. // disable regular version of this method
  348. ::grpc::Status ListFeatures(::grpc::ServerContext* /*context*/, const ::namespace_uploadpic::Request* /*request*/, ::grpc::ServerWriter< ::namespace_uploadpic::Response>* /*writer*/) override {
  349. abort();
  350. return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  351. }
  352. // replace default version of method with split streamed
  353. virtual ::grpc::Status StreamedListFeatures(::grpc::ServerContext* context, ::grpc::ServerSplitStreamer< ::namespace_uploadpic::Request,::namespace_uploadpic::Response>* server_split_streamer) = 0;
  354. };
  355. typedef WithSplitStreamingMethod_ListFeatures<Service > SplitStreamedService;
  356. typedef WithSplitStreamingMethod_ListFeatures<Service > StreamedService;
  357. };
  358. } // namespace namespace_uploadpic
  359. #endif // GRPC_protobuf_2eproto__INCLUDED