diff options
Diffstat (limited to 'grpc/include/grpcpp/server_builder.h')
-rw-r--r-- | grpc/include/grpcpp/server_builder.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/grpc/include/grpcpp/server_builder.h b/grpc/include/grpcpp/server_builder.h index cb75d87d..00e82a10 100644 --- a/grpc/include/grpcpp/server_builder.h +++ b/grpc/include/grpcpp/server_builder.h @@ -269,6 +269,11 @@ class ServerBuilder { builder_->interceptor_creators_ = std::move(interceptor_creators); } + /// Set the allocator for creating and releasing callback server context. + /// Takes the owndership of the allocator. + ServerBuilder& SetContextAllocator( + std::unique_ptr<grpc::ContextAllocator> context_allocator); + #ifndef GRPC_CALLBACK_API_NONEXPERIMENTAL /// Register a generic service that uses the callback API. /// Matches requests with any :authority @@ -352,6 +357,9 @@ class ServerBuilder { server_config_fetcher_ = server_config_fetcher; } + /// Experimental API, subject to change. + virtual ChannelArguments BuildChannelArgs(); + private: friend class ::grpc::testing::ServerBuilderPluginTest; @@ -389,6 +397,7 @@ class ServerBuilder { std::vector<std::unique_ptr<grpc::ServerBuilderPlugin>> plugins_; grpc_resource_quota* resource_quota_; grpc::AsyncGenericService* generic_service_{nullptr}; + std::unique_ptr<ContextAllocator> context_allocator_; #ifdef GRPC_CALLBACK_API_NONEXPERIMENTAL grpc::CallbackGenericService* callback_generic_service_{nullptr}; #else |