예제 #1
0
        /// <summary>
        /// Creates a <see cref="ReachPlanServiceClient"/> 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="ReachPlanServiceSettings"/>.</param>
        /// <returns>The created <see cref="ReachPlanServiceClient"/>.</returns>
        internal static ReachPlanServiceClient Create(grpccore::CallInvoker callInvoker, ReachPlanServiceSettings settings = null)
        {
            gax::GaxPreconditions.CheckNotNull(callInvoker, nameof(callInvoker));
            grpcinter::Interceptor interceptor = settings?.Interceptor;

            if (interceptor != null)
            {
                callInvoker = grpcinter::CallInvokerExtensions.Intercept(callInvoker, interceptor);
            }
            ReachPlanService.ReachPlanServiceClient grpcClient = new ReachPlanService.ReachPlanServiceClient(callInvoker);
            return(new ReachPlanServiceClientImpl(grpcClient, settings));
        }
예제 #2
0
        /// <summary>
        /// Constructs a client wrapper for the ReachPlanService service, with the specified gRPC client and settings.
        /// </summary>
        /// <param name="grpcClient">The underlying gRPC client.</param>
        /// <param name="settings">The base <see cref="ReachPlanServiceSettings"/> used within this client.</param>
        public ReachPlanServiceClientImpl(ReachPlanService.ReachPlanServiceClient grpcClient, ReachPlanServiceSettings settings)
        {
            GrpcClient = grpcClient;
            ReachPlanServiceSettings effectiveSettings = settings ?? ReachPlanServiceSettings.GetDefault();
            gaxgrpc::ClientHelper    clientHelper      = new gaxgrpc::ClientHelper(effectiveSettings);

            _callListPlannableLocations = clientHelper.BuildApiCall <ListPlannableLocationsRequest, ListPlannableLocationsResponse>(grpcClient.ListPlannableLocationsAsync, grpcClient.ListPlannableLocations, effectiveSettings.ListPlannableLocationsSettings);
            Modify_ApiCall(ref _callListPlannableLocations);
            Modify_ListPlannableLocationsApiCall(ref _callListPlannableLocations);
            _callListPlannableProducts = clientHelper.BuildApiCall <ListPlannableProductsRequest, ListPlannableProductsResponse>(grpcClient.ListPlannableProductsAsync, grpcClient.ListPlannableProducts, effectiveSettings.ListPlannableProductsSettings);
            Modify_ApiCall(ref _callListPlannableProducts);
            Modify_ListPlannableProductsApiCall(ref _callListPlannableProducts);
            _callGenerateProductMixIdeas = clientHelper.BuildApiCall <GenerateProductMixIdeasRequest, GenerateProductMixIdeasResponse>(grpcClient.GenerateProductMixIdeasAsync, grpcClient.GenerateProductMixIdeas, effectiveSettings.GenerateProductMixIdeasSettings).WithGoogleRequestParam("customer_id", request => request.CustomerId);
            Modify_ApiCall(ref _callGenerateProductMixIdeas);
            Modify_GenerateProductMixIdeasApiCall(ref _callGenerateProductMixIdeas);
            _callGenerateReachForecast = clientHelper.BuildApiCall <GenerateReachForecastRequest, GenerateReachForecastResponse>(grpcClient.GenerateReachForecastAsync, grpcClient.GenerateReachForecast, effectiveSettings.GenerateReachForecastSettings).WithGoogleRequestParam("customer_id", request => request.CustomerId);
            Modify_ApiCall(ref _callGenerateReachForecast);
            Modify_GenerateReachForecastApiCall(ref _callGenerateReachForecast);
            OnConstruction(grpcClient, effectiveSettings, clientHelper);
        }
예제 #3
0
 partial void OnConstruction(ReachPlanService.ReachPlanServiceClient grpcClient, ReachPlanServiceSettings effectiveSettings, gaxgrpc::ClientHelper clientHelper);