diff options
Diffstat (limited to 'include/grpcpp/impl/codegen/client_interceptor.h')
-rw-r--r-- | include/grpcpp/impl/codegen/client_interceptor.h | 47 |
1 files changed, 5 insertions, 42 deletions
diff --git a/include/grpcpp/impl/codegen/client_interceptor.h b/include/grpcpp/impl/codegen/client_interceptor.h index c1feecd0ae..0a3a2ab07f 100644 --- a/include/grpcpp/impl/codegen/client_interceptor.h +++ b/include/grpcpp/impl/codegen/client_interceptor.h @@ -38,17 +38,10 @@ class CallNoOp; namespace experimental { class ClientRpcInfo; -class ClientInterceptor { - public: - virtual ~ClientInterceptor() {} - - virtual void Intercept(InterceptorBatchMethods* methods) = 0; -}; - class ClientInterceptorFactoryInterface { public: virtual ~ClientInterceptorFactoryInterface() {} - virtual ClientInterceptor* CreateClientInterceptor(ClientRpcInfo* info) = 0; + virtual Interceptor* CreateClientInterceptor(ClientRpcInfo* info) = 0; }; class ClientRpcInfo { @@ -60,7 +53,7 @@ class ClientRpcInfo { experimental::ClientInterceptorFactoryInterface>>& creators) : ctx_(ctx), method_(method), channel_(channel) { for (const auto& creator : creators) { - interceptors_.push_back(std::unique_ptr<experimental::ClientInterceptor>( + interceptors_.push_back(std::unique_ptr<experimental::Interceptor>( creator->CreateClientInterceptor(this))); } } @@ -74,32 +67,7 @@ class ClientRpcInfo { const char* method() { return method_; } const Channel* channel() { return channel_; } grpc::ClientContext* client_context() { return ctx_; } - // const grpc::InterceptedMessage& outgoing_message(); - // grpc::InterceptedMessage *mutable_outgoing_message(); - // const grpc::InterceptedMessage& received_message(); - // grpc::InterceptedMessage *mutable_received_message(); - - // const std::multimap<grpc::string, grpc::string>* client_initial_metadata() - // { return &ctx_->send_initial_metadata_; } const - // std::multimap<grpc::string_ref, grpc::string_ref>* - // server_initial_metadata() { return &ctx_->GetServerInitialMetadata(); } - // const std::multimap<grpc::string_ref, grpc::string_ref>* - // server_trailing_metadata() { return &ctx_->GetServerTrailingMetadata(); } - // const Status *status(); - - // template <class M> - // void set_outgoing_message(M* msg); // edit outgoing message - // template <class M> - // void set_received_message(M* msg); // edit received message - // for hijacking (can be called multiple times for streaming) - // template <class M> - // void inject_received_message(M* msg); - // void set_client_initial_metadata( - // const std::multimap<grpc::string, grpc::string>& overwrite); - // void set_server_initial_metadata(const std::multimap<grpc::string, - // grpc::string>& overwrite); void set_server_trailing_metadata(const - // std::multimap<grpc::string, grpc::string>& overwrite); void - // set_status(Status status); + public: /* Runs interceptor at pos \a pos. If \a reverse is set, the interceptor order * is the reverse */ @@ -110,20 +78,15 @@ class ClientRpcInfo { interceptors_[pos]->Intercept(interceptor_methods); } + private: grpc::ClientContext* ctx_ = nullptr; const char* method_ = nullptr; const grpc::Channel* channel_ = nullptr; public: - std::vector<std::unique_ptr<experimental::ClientInterceptor>> interceptors_; + std::vector<std::unique_ptr<experimental::Interceptor>> interceptors_; bool hijacked_ = false; int hijacked_interceptor_ = false; - // template <class Op1 = internal::CallNoOp<1>, class Op2 = - // internal::CallNoOp<2>, - // class Op3 = internal::CallNoOp<3>, class Op4 = - // internal::CallNoOp<4>, class Op5 = internal::CallNoOp<5>, class Op6 - // = internal::CallNoOp<6>> - // friend class internal::InterceptorBatchMethodsImpl; }; } // namespace experimental |