| // Generated by the gRPC protobuf plugin. |
| // If you make any local change, they will be lost. |
| // source: src/proto/grpc/testing/compiler_test.proto |
| // Original file comments: |
| // Copyright 2016, Google Inc. |
| // All rights reserved. |
| // |
| // Redistribution and use in source and binary forms, with or without |
| // modification, are permitted provided that the following conditions are |
| // met: |
| // |
| // * Redistributions of source code must retain the above copyright |
| // notice, this list of conditions and the following disclaimer. |
| // * Redistributions in binary form must reproduce the above |
| // copyright notice, this list of conditions and the following disclaimer |
| // in the documentation and/or other materials provided with the |
| // distribution. |
| // * Neither the name of Google Inc. nor the names of its |
| // contributors may be used to endorse or promote products derived from |
| // this software without specific prior written permission. |
| // |
| // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| // |
| // File detached comment 1 |
| // |
| // File detached comment 2 |
| // |
| // File leading comment 1 |
| #ifndef GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED |
| #define GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED |
| |
| #include "src/proto/grpc/testing/compiler_test.pb.h" |
| |
| #include <grpc++/impl/codegen/async_stream.h> |
| #include <grpc++/impl/codegen/async_unary_call.h> |
| #include <grpc++/impl/codegen/method_handler_impl.h> |
| #include <grpc++/impl/codegen/proto_utils.h> |
| #include <grpc++/impl/codegen/rpc_method.h> |
| #include <grpc++/impl/codegen/service_type.h> |
| #include <grpc++/impl/codegen/status.h> |
| #include <grpc++/impl/codegen/stub_options.h> |
| #include <grpc++/impl/codegen/sync_stream.h> |
| |
| namespace grpc { |
| class CompletionQueue; |
| class Channel; |
| class RpcService; |
| class ServerCompletionQueue; |
| class ServerContext; |
| } // namespace grpc |
| |
| namespace grpc { |
| namespace testing { |
| |
| // ServiceA detached comment 1 |
| // |
| // ServiceA detached comment 2 |
| // |
| // ServiceA leading comment 1 |
| class ServiceA GRPC_FINAL { |
| public: |
| class StubInterface { |
| public: |
| virtual ~StubInterface() {} |
| // MethodA1 leading comment 1 |
| virtual ::grpc::Status MethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) = 0; |
| std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>> AsyncMethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) { |
| return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>>(AsyncMethodA1Raw(context, request, cq)); |
| } |
| // MethodA1 trailing comment 1 |
| // MethodA2 detached leading comment 1 |
| // |
| // Method A2 leading comment 1 |
| // Method A2 leading comment 2 |
| std::unique_ptr< ::grpc::ClientWriterInterface< ::grpc::testing::Request>> MethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response) { |
| return std::unique_ptr< ::grpc::ClientWriterInterface< ::grpc::testing::Request>>(MethodA2Raw(context, response)); |
| } |
| std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>> AsyncMethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) { |
| return std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>>(AsyncMethodA2Raw(context, response, cq, tag)); |
| } |
| // MethodA2 trailing comment 1 |
| private: |
| virtual ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>* AsyncMethodA1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) = 0; |
| virtual ::grpc::ClientWriterInterface< ::grpc::testing::Request>* MethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response) = 0; |
| virtual ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>* AsyncMethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) = 0; |
| }; |
| class Stub GRPC_FINAL : public StubInterface { |
| public: |
| Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel); |
| ::grpc::Status MethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) GRPC_OVERRIDE; |
| std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>> AsyncMethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) { |
| return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>>(AsyncMethodA1Raw(context, request, cq)); |
| } |
| std::unique_ptr< ::grpc::ClientWriter< ::grpc::testing::Request>> MethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response) { |
| return std::unique_ptr< ::grpc::ClientWriter< ::grpc::testing::Request>>(MethodA2Raw(context, response)); |
| } |
| std::unique_ptr< ::grpc::ClientAsyncWriter< ::grpc::testing::Request>> AsyncMethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) { |
| return std::unique_ptr< ::grpc::ClientAsyncWriter< ::grpc::testing::Request>>(AsyncMethodA2Raw(context, response, cq, tag)); |
| } |
| |
| private: |
| std::shared_ptr< ::grpc::ChannelInterface> channel_; |
| ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>* AsyncMethodA1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) GRPC_OVERRIDE; |
| ::grpc::ClientWriter< ::grpc::testing::Request>* MethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response) GRPC_OVERRIDE; |
| ::grpc::ClientAsyncWriter< ::grpc::testing::Request>* AsyncMethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) GRPC_OVERRIDE; |
| const ::grpc::RpcMethod rpcmethod_MethodA1_; |
| const ::grpc::RpcMethod rpcmethod_MethodA2_; |
| }; |
| static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); |
| |
| class Service : public ::grpc::Service { |
| public: |
| Service(); |
| virtual ~Service(); |
| // MethodA1 leading comment 1 |
| virtual ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response); |
| // MethodA1 trailing comment 1 |
| // MethodA2 detached leading comment 1 |
| // |
| // Method A2 leading comment 1 |
| // Method A2 leading comment 2 |
| virtual ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response); |
| // MethodA2 trailing comment 1 |
| }; |
| template <class BaseClass> |
| class WithAsyncMethod_MethodA1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithAsyncMethod_MethodA1() { |
| ::grpc::Service::MarkMethodAsync(0); |
| } |
| ~WithAsyncMethod_MethodA1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| void RequestMethodA1(::grpc::ServerContext* context, ::grpc::testing::Request* request, ::grpc::ServerAsyncResponseWriter< ::grpc::testing::Response>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { |
| ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); |
| } |
| }; |
| template <class BaseClass> |
| class WithAsyncMethod_MethodA2 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithAsyncMethod_MethodA2() { |
| ::grpc::Service::MarkMethodAsync(1); |
| } |
| ~WithAsyncMethod_MethodA2() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| void RequestMethodA2(::grpc::ServerContext* context, ::grpc::ServerAsyncReader< ::grpc::testing::Response, ::grpc::testing::Request>* reader, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { |
| ::grpc::Service::RequestAsyncClientStreaming(1, context, reader, new_call_cq, notification_cq, tag); |
| } |
| }; |
| typedef WithAsyncMethod_MethodA1<WithAsyncMethod_MethodA2<Service > > AsyncService; |
| template <class BaseClass> |
| class WithGenericMethod_MethodA1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithGenericMethod_MethodA1() { |
| ::grpc::Service::MarkMethodGeneric(0); |
| } |
| ~WithGenericMethod_MethodA1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| }; |
| template <class BaseClass> |
| class WithGenericMethod_MethodA2 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithGenericMethod_MethodA2() { |
| ::grpc::Service::MarkMethodGeneric(1); |
| } |
| ~WithGenericMethod_MethodA2() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| }; |
| template <class BaseClass> |
| class WithStreamedUnaryMethod_MethodA1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithStreamedUnaryMethod_MethodA1() { |
| ::grpc::Service::MarkMethodStreamed(0, |
| new ::grpc::StreamedUnaryHandler< ::grpc::testing::Request, ::grpc::testing::Response>(std::bind(&WithStreamedUnaryMethod_MethodA1<BaseClass>::StreamedMethodA1, this, std::placeholders::_1, std::placeholders::_2))); |
| } |
| ~WithStreamedUnaryMethod_MethodA1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable regular version of this method |
| ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| // replace default version of method with streamed unary |
| virtual ::grpc::Status StreamedMethodA1(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::grpc::testing::Request,::grpc::testing::Response>* server_unary_streamer) = 0; |
| }; |
| typedef WithStreamedUnaryMethod_MethodA1<Service > StreamedUnaryService; |
| typedef Service SplitStreamedService; |
| typedef WithStreamedUnaryMethod_MethodA1<Service > StreamedService; |
| }; |
| |
| // ServiceB leading comment 1 |
| class ServiceB GRPC_FINAL { |
| public: |
| class StubInterface { |
| public: |
| virtual ~StubInterface() {} |
| // MethodB1 leading comment 1 |
| virtual ::grpc::Status MethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) = 0; |
| std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>> AsyncMethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) { |
| return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>>(AsyncMethodB1Raw(context, request, cq)); |
| } |
| // MethodB1 trailing comment 1 |
| private: |
| virtual ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>* AsyncMethodB1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) = 0; |
| }; |
| class Stub GRPC_FINAL : public StubInterface { |
| public: |
| Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel); |
| ::grpc::Status MethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) GRPC_OVERRIDE; |
| std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>> AsyncMethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) { |
| return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>>(AsyncMethodB1Raw(context, request, cq)); |
| } |
| |
| private: |
| std::shared_ptr< ::grpc::ChannelInterface> channel_; |
| ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>* AsyncMethodB1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) GRPC_OVERRIDE; |
| const ::grpc::RpcMethod rpcmethod_MethodB1_; |
| }; |
| static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); |
| |
| class Service : public ::grpc::Service { |
| public: |
| Service(); |
| virtual ~Service(); |
| // MethodB1 leading comment 1 |
| virtual ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response); |
| // MethodB1 trailing comment 1 |
| }; |
| template <class BaseClass> |
| class WithAsyncMethod_MethodB1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithAsyncMethod_MethodB1() { |
| ::grpc::Service::MarkMethodAsync(0); |
| } |
| ~WithAsyncMethod_MethodB1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| void RequestMethodB1(::grpc::ServerContext* context, ::grpc::testing::Request* request, ::grpc::ServerAsyncResponseWriter< ::grpc::testing::Response>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { |
| ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); |
| } |
| }; |
| typedef WithAsyncMethod_MethodB1<Service > AsyncService; |
| template <class BaseClass> |
| class WithGenericMethod_MethodB1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithGenericMethod_MethodB1() { |
| ::grpc::Service::MarkMethodGeneric(0); |
| } |
| ~WithGenericMethod_MethodB1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable synchronous version of this method |
| ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| }; |
| template <class BaseClass> |
| class WithStreamedUnaryMethod_MethodB1 : public BaseClass { |
| private: |
| void BaseClassMustBeDerivedFromService(const Service *service) {} |
| public: |
| WithStreamedUnaryMethod_MethodB1() { |
| ::grpc::Service::MarkMethodStreamed(0, |
| new ::grpc::StreamedUnaryHandler< ::grpc::testing::Request, ::grpc::testing::Response>(std::bind(&WithStreamedUnaryMethod_MethodB1<BaseClass>::StreamedMethodB1, this, std::placeholders::_1, std::placeholders::_2))); |
| } |
| ~WithStreamedUnaryMethod_MethodB1() GRPC_OVERRIDE { |
| BaseClassMustBeDerivedFromService(this); |
| } |
| // disable regular version of this method |
| ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE { |
| abort(); |
| return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
| } |
| // replace default version of method with streamed unary |
| virtual ::grpc::Status StreamedMethodB1(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::grpc::testing::Request,::grpc::testing::Response>* server_unary_streamer) = 0; |
| }; |
| typedef WithStreamedUnaryMethod_MethodB1<Service > StreamedUnaryService; |
| typedef Service SplitStreamedService; |
| typedef WithStreamedUnaryMethod_MethodB1<Service > StreamedService; |
| }; |
| // ServiceB trailing comment 1 |
| |
| } // namespace testing |
| } // namespace grpc |
| |
| |
| #endif // GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED |