text: // Generated by the gRPC C++ plugin.
  // If you make any local change, they will be lost.
  // source: v3lock.proto
  
  #include "v3lock.pb.h"
  #include "v3lock.grpc.pb.h"
  
  #include <functional>
  #include <grpcpp/impl/codegen/async_stream.h>
  #include <grpcpp/impl/codegen/async_unary_call.h>
  #include <grpcpp/impl/codegen/channel_interface.h>
  #include <grpcpp/impl/codegen/client_unary_call.h>
  #include <grpcpp/impl/codegen/client_callback.h>
  #include <grpcpp/impl/codegen/message_allocator.h>
  #include <grpcpp/impl/codegen/method_handler.h>
  #include <grpcpp/impl/codegen/rpc_service_method.h>
  #include <grpcpp/impl/codegen/server_callback.h>
  #include <grpcpp/impl/codegen/server_callback_handlers.h>
  #include <grpcpp/impl/codegen/server_context.h>
  #include <grpcpp/impl/codegen/service_type.h>
  #include <grpcpp/impl/codegen/sync_stream.h>
  namespace v3lockpb {
  
  static const char* Lock_method_names[] = {
    "/v3lockpb.Lock/Lock",
    "/v3lockpb.Lock/Unlock",
  };
  
  std::unique_ptr< Lock::Stub> Lock::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) {
    (void)options;
    std::unique_ptr< Lock::Stub> stub(new Lock::Stub(channel));
    return stub;
  }
  
  Lock::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel)
    : channel_(channel), rpcmethod_Lock_(Lock_method_names[0], ::grpc::internal::RpcMethod::NORMAL_RPC, channel)
    , rpcmethod_Unlock_(Lock_method_names[1], ::grpc::internal::RpcMethod::NORMAL_RPC, channel)
    {}
  
  ::grpc::Status Lock::Stub::Lock(::grpc::ClientContext* context, const ::v3lockpb::LockRequest& request, ::v3lockpb::LockResponse* response) {
    return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_Lock_, context, request, response);
  }
  
  void Lock::Stub::experimental_async::Lock(::grpc::ClientContext* context, const ::v3lockpb::LockRequest* request, ::v3lockpb::LockResponse* response, std::function<void(::grpc::Status)> f) {
    ::grpc_impl::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_Lock_, context, request, response, std::move(f));
  }
  
  void Lock::Stub::experimental_async::Lock(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::v3lockpb::LockResponse* response, std::function<void(::grpc::Status)> f) {
    ::grpc_impl::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_Lock_, context, request, response, std::move(f));
  }
  
  void Lock::Stub::experimental_async::Lock(::grpc::ClientContext* context, const ::v3lockpb::LockRequest* request, ::v3lockpb::LockResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) {
    ::grpc_impl::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_Lock_, context, request, response, reactor);
  }
  
  void Lock::Stub::experimental_async::Lock(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::v3lockpb::LockResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) {
    ::grpc_impl::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_Lock_, context, request, response, reactor);
  }
  
  ::grpc::ClientAsyncResponseReader< ::v3lockpb::LockResponse>* Lock::Stub::AsyncLockRaw(::grpc::ClientContext* context, const ::v3lockpb::LockRequest& request, ::grpc::CompletionQueue* cq) {
    return ::grpc_impl::internal::ClientAsyncResponseReaderFactory< ::v3lockpb::LockResponse>::Create(channel_.get(), cq, rpcmethod_Lock_, context, request, true);
  }
  
  ::grpc::ClientAsyncResponseReader< ::v3lockpb::LockResponse>* Lock::Stub::PrepareAsyncLockRaw(::grpc::ClientContext* context, const ::v3lockpb::LockRequest& request, ::grpc::CompletionQueue* cq) {
    return ::grpc_impl::internal::ClientAsyncResponseReaderFactory< ::v3lockpb::LockResponse>::Create(channel_.get(), cq, rpcmethod_Lock_, context, request, false);
  }
  
  ::grpc::Status Lock::Stub::Unlock(::grpc::ClientContext* context, const ::v3lockpb::UnlockRequest& request, ::v3lockpb::UnlockResponse* response) {
    return ::grpc::internal::BlockingUnaryCall(channel_.get(), rpcmethod_Unlock_, context, request, response);
  }
  
  void Lock::Stub::experimental_async::Unlock(::grpc::ClientContext* context, const ::v3lockpb::UnlockRequest* request, ::v3lockpb::UnlockResponse* response, std::function<void(::grpc::Status)> f) {
    ::grpc_impl::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_Unlock_, context, request, response, std::move(f));
  }
  
  void Lock::Stub::experimental_async::Unlock(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::v3lockpb::UnlockResponse* response, std::function<void(::grpc::Status)> f) {
    ::grpc_impl::internal::CallbackUnaryCall(stub_->channel_.get(), stub_->rpcmethod_Unlock_, context, request, response, std::move(f));
  }
  
  void Lock::Stub::experimental_async::Unlock(::grpc::ClientContext* context, const ::v3lockpb::UnlockRequest* request, ::v3lockpb::UnlockResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) {
    ::grpc_impl::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_Unlock_, context, request, response, reactor);
  }
  
  void Lock::Stub::experimental_async::Unlock(::grpc::ClientContext* context, const ::grpc::ByteBuffer* request, ::v3lockpb::UnlockResponse* response, ::grpc::experimental::ClientUnaryReactor* reactor) {
    ::grpc_impl::internal::ClientCallbackUnaryFactory::Create(stub_->channel_.get(), stub_->rpcmethod_Unlock_, context, request, response, reactor);
  }
  
  ::grpc::ClientAsyncResponseReader< ::v3lockpb::UnlockResponse>* Lock::Stub::AsyncUnlockRaw(::grpc::ClientContext* context, const ::v3lockpb::UnlockRequest& request, ::grpc::CompletionQueue* cq) {
    return ::grpc_impl::internal::ClientAsyncResponseReaderFactory< ::v3lockpb::UnlockResponse>::Create(channel_.get(), cq, rpcmethod_Unlock_, context, request, true);
  }
  
  ::grpc::ClientAsyncResponseReader< ::v3lockpb::UnlockResponse>* Lock::Stub::PrepareAsyncUnlockRaw(::grpc::ClientContext* context, const ::v3lockpb::UnlockRequest& request, ::grpc::CompletionQueue* cq) {
    return ::grpc_impl::internal::ClientAsyncResponseReaderFactory< ::v3lockpb::UnlockResponse>::Create(channel_.get(), cq, rpcmethod_Unlock_, context, request, false);
  }
  
  Lock::Service::Service() {
    AddMethod(new ::grpc::internal::RpcServiceMethod(
        Lock_method_names[0],
        ::grpc::internal::RpcMethod::NORMAL_RPC,
        new ::grpc::internal::RpcMethodHandler< Lock::Service, ::v3lockpb::LockRequest, ::v3lockpb::LockResponse>(
            [](Lock::Service* service,
               ::grpc_impl::ServerContext* ctx,
               const ::v3lockpb::LockRequest* req,
               ::v3lockpb::LockResponse* resp) {
                 return service->Lock(ctx, req, resp);
               }, this)));
    AddMethod(new ::grpc::internal::RpcServiceMethod(
        Lock_method_names[1],
        ::grpc::internal::RpcMethod::NORMAL_RPC,
        new ::grpc::internal::RpcMethodHandler< Lock::Service, ::v3lockpb::UnlockRequest, ::v3lockpb::UnlockResponse>(
            [](Lock::Service* service,
               ::grpc_impl::ServerContext* ctx,
               const ::v3lockpb::UnlockRequest* req,
               ::v3lockpb::UnlockResponse* resp) {
                 return service->Unlock(ctx, req, resp);
               }, this)));
  }
  
  Lock::Service::~Service() {
  }
  
  ::grpc::Status Lock::Service::Lock(::grpc::ServerContext* context, const ::v3lockpb::LockRequest* request, ::v3lockpb::LockResponse* response) {
    (void) context;
    (void) request;
    (void) response;
    return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  }
  
  ::grpc::Status Lock::Service::Unlock(::grpc::ServerContext* context, const ::v3lockpb::UnlockRequest* request, ::v3lockpb::UnlockResponse* response) {
    (void) context;
    (void) request;
    (void) response;
    return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
  }
  
  
  }  // namespace v3lockpb
  
  