/// <summary> /// Creates a <see cref="FulfillmentsClient"/> which uses the specified call invoker for remote operations. /// </summary> /// <param name="callInvoker"> /// The <see cref="grpccore::CallInvoker"/> for remote operations. Must not be null. /// </param> /// <param name="settings">Optional <see cref="FulfillmentsSettings"/>.</param> /// <returns>The created <see cref="FulfillmentsClient"/>.</returns> internal static FulfillmentsClient Create(grpccore::CallInvoker callInvoker, FulfillmentsSettings settings = null) { gax::GaxPreconditions.CheckNotNull(callInvoker, nameof(callInvoker)); grpcinter::Interceptor interceptor = settings?.Interceptor; if (interceptor != null) { callInvoker = grpcinter::CallInvokerExtensions.Intercept(callInvoker, interceptor); } Fulfillments.FulfillmentsClient grpcClient = new Fulfillments.FulfillmentsClient(callInvoker); return(new FulfillmentsClientImpl(grpcClient, settings)); }
/// <summary> /// Constructs a client wrapper for the Fulfillments service, with the specified gRPC client and settings. /// </summary> /// <param name="grpcClient">The underlying gRPC client.</param> /// <param name="settings">The base <see cref="FulfillmentsSettings"/> used within this client.</param> public FulfillmentsClientImpl(Fulfillments.FulfillmentsClient grpcClient, FulfillmentsSettings settings) { GrpcClient = grpcClient; FulfillmentsSettings effectiveSettings = settings ?? FulfillmentsSettings.GetDefault(); gaxgrpc::ClientHelper clientHelper = new gaxgrpc::ClientHelper(effectiveSettings); _callGetFulfillment = clientHelper.BuildApiCall <GetFulfillmentRequest, Fulfillment>(grpcClient.GetFulfillmentAsync, grpcClient.GetFulfillment, effectiveSettings.GetFulfillmentSettings).WithGoogleRequestParam("name", request => request.Name); Modify_ApiCall(ref _callGetFulfillment); Modify_GetFulfillmentApiCall(ref _callGetFulfillment); _callUpdateFulfillment = clientHelper.BuildApiCall <UpdateFulfillmentRequest, Fulfillment>(grpcClient.UpdateFulfillmentAsync, grpcClient.UpdateFulfillment, effectiveSettings.UpdateFulfillmentSettings).WithGoogleRequestParam("fulfillment.name", request => request.Fulfillment?.Name); Modify_ApiCall(ref _callUpdateFulfillment); Modify_UpdateFulfillmentApiCall(ref _callUpdateFulfillment); OnConstruction(grpcClient, effectiveSettings, clientHelper); }
partial void OnConstruction(Fulfillments.FulfillmentsClient grpcClient, FulfillmentsSettings effectiveSettings, gaxgrpc::ClientHelper clientHelper);