/// <summary>Register service method with a service binder with or without implementation. Useful when customizing the service binding logic. /// Note: this method is part of an experimental API that can change or be removed without any prior notice.</summary> /// <param name="serviceBinder">Service methods will be bound by calling <c>AddMethod</c> on this object.</param> /// <param name="serviceImpl">An object implementing the server-side handling logic.</param> public static void BindService(grpc::ServiceBinderBase serviceBinder, CalculatorBase serviceImpl) { serviceBinder.AddMethod(__Method_Add, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Add)); serviceBinder.AddMethod(__Method_Subtract, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Subtract)); serviceBinder.AddMethod(__Method_Multiply, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.OperationRequest, global::Calculators.OperationResponse>(serviceImpl.Multiply)); serviceBinder.AddMethod(__Method_Divide, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Calculators.DivisionRequest, global::Calculators.DivisionResponse>(serviceImpl.Divide)); }
/// <summary>Creates service definition that can be registered with a server</summary> /// <param name="serviceImpl">An object implementing the server-side handling logic.</param> public static grpc::ServerServiceDefinition BindService(CalculatorBase serviceImpl) { return(grpc::ServerServiceDefinition.CreateBuilder() .AddMethod(__Method_Add, serviceImpl.Add) .AddMethod(__Method_Subtract, serviceImpl.Subtract) .AddMethod(__Method_Multiply, serviceImpl.Multiply) .AddMethod(__Method_Divide, serviceImpl.Divide).Build()); }