Class ProductServiceClientImpl (1.3.0)

public sealed class ProductServiceClientImpl : ProductServiceClient

ProductService client wrapper implementation, for convenient use.

Inheritance

Object > ProductServiceClient > ProductServiceClientImpl

Namespace

Google.Cloud.Retail.V2

Assembly

Google.Cloud.Retail.V2.dll

Remarks

Service for ingesting [Product][google.cloud.retail.v2.Product] information of the customer's website.

Constructors

ProductServiceClientImpl(ProductService.ProductServiceClient, ProductServiceSettings)

public ProductServiceClientImpl(ProductService.ProductServiceClient grpcClient, ProductServiceSettings settings)

Constructs a client wrapper for the ProductService service, with the specified gRPC client and settings.

Parameters
NameDescription
grpcClientProductService.ProductServiceClient

The underlying gRPC client.

settingsProductServiceSettings

The base ProductServiceSettings used within this client.

Properties

AddFulfillmentPlacesOperationsClient

public override OperationsClient AddFulfillmentPlacesOperationsClient { get; }

The long-running operations client for AddFulfillmentPlaces.

Property Value
TypeDescription
OperationsClient
Overrides

GrpcClient

public override ProductService.ProductServiceClient GrpcClient { get; }

The underlying gRPC ProductService client

Property Value
TypeDescription
ProductService.ProductServiceClient
Overrides

ImportProductsOperationsClient

public override OperationsClient ImportProductsOperationsClient { get; }

The long-running operations client for ImportProducts.

Property Value
TypeDescription
OperationsClient
Overrides

RemoveFulfillmentPlacesOperationsClient

public override OperationsClient RemoveFulfillmentPlacesOperationsClient { get; }

The long-running operations client for RemoveFulfillmentPlaces.

Property Value
TypeDescription
OperationsClient
Overrides

SetInventoryOperationsClient

public override OperationsClient SetInventoryOperationsClient { get; }

The long-running operations client for SetInventory.

Property Value
TypeDescription
OperationsClient
Overrides

Methods

AddFulfillmentPlaces(AddFulfillmentPlacesRequest, CallSettings)

public override Operation<AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata> AddFulfillmentPlaces(AddFulfillmentPlacesRequest request, CallSettings callSettings = null)

Incrementally adds place IDs to [Product.fulfillment_info.place_ids][google.cloud.retail.v2.FulfillmentInfo.place_ids].

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, the added place IDs are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestAddFulfillmentPlacesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata>

The RPC response.

Overrides

AddFulfillmentPlacesAsync(AddFulfillmentPlacesRequest, CallSettings)

public override Task<Operation<AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata>> AddFulfillmentPlacesAsync(AddFulfillmentPlacesRequest request, CallSettings callSettings = null)

Incrementally adds place IDs to [Product.fulfillment_info.place_ids][google.cloud.retail.v2.FulfillmentInfo.place_ids].

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, the added place IDs are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestAddFulfillmentPlacesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<AddFulfillmentPlacesResponse, AddFulfillmentPlacesMetadata>>

A Task containing the RPC response.

Overrides

CreateProduct(CreateProductRequest, CallSettings)

public override Product CreateProduct(CreateProductRequest request, CallSettings callSettings = null)

Creates a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestCreateProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Product

The RPC response.

Overrides

CreateProductAsync(CreateProductRequest, CallSettings)

public override Task<Product> CreateProductAsync(CreateProductRequest request, CallSettings callSettings = null)

Creates a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestCreateProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Product>

A Task containing the RPC response.

Overrides

DeleteProduct(DeleteProductRequest, CallSettings)

public override void DeleteProduct(DeleteProductRequest request, CallSettings callSettings = null)

Deletes a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestDeleteProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteProductAsync(DeleteProductRequest, CallSettings)

public override Task DeleteProductAsync(DeleteProductRequest request, CallSettings callSettings = null)

Deletes a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestDeleteProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task

A Task containing the RPC response.

Overrides

GetProduct(GetProductRequest, CallSettings)

public override Product GetProduct(GetProductRequest request, CallSettings callSettings = null)

Gets a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestGetProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Product

The RPC response.

Overrides

GetProductAsync(GetProductRequest, CallSettings)

public override Task<Product> GetProductAsync(GetProductRequest request, CallSettings callSettings = null)

Gets a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestGetProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Product>

A Task containing the RPC response.

Overrides

ImportProducts(ImportProductsRequest, CallSettings)

public override Operation<ImportProductsResponse, ImportMetadata> ImportProducts(ImportProductsRequest request, CallSettings callSettings = null)

Bulk import of multiple [Product][google.cloud.retail.v2.Product]s.

Request processing may be synchronous. No partial updating is supported. Non-existing items are created.

Note that it is possible for a subset of the [Product][google.cloud.retail.v2.Product]s to be successfully updated.

Parameters
NameDescription
requestImportProductsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<ImportProductsResponse, ImportMetadata>

The RPC response.

Overrides

ImportProductsAsync(ImportProductsRequest, CallSettings)

public override Task<Operation<ImportProductsResponse, ImportMetadata>> ImportProductsAsync(ImportProductsRequest request, CallSettings callSettings = null)

Bulk import of multiple [Product][google.cloud.retail.v2.Product]s.

Request processing may be synchronous. No partial updating is supported. Non-existing items are created.

Note that it is possible for a subset of the [Product][google.cloud.retail.v2.Product]s to be successfully updated.

Parameters
NameDescription
requestImportProductsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<ImportProductsResponse, ImportMetadata>>

A Task containing the RPC response.

Overrides

ListProducts(ListProductsRequest, CallSettings)

public override PagedEnumerable<ListProductsResponse, Product> ListProducts(ListProductsRequest request, CallSettings callSettings = null)

Gets a list of [Product][google.cloud.retail.v2.Product]s.

Parameters
NameDescription
requestListProductsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListProductsResponse, Product>

A pageable sequence of Product resources.

Overrides

ListProductsAsync(ListProductsRequest, CallSettings)

public override PagedAsyncEnumerable<ListProductsResponse, Product> ListProductsAsync(ListProductsRequest request, CallSettings callSettings = null)

Gets a list of [Product][google.cloud.retail.v2.Product]s.

Parameters
NameDescription
requestListProductsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListProductsResponse, Product>

A pageable asynchronous sequence of Product resources.

Overrides

RemoveFulfillmentPlaces(RemoveFulfillmentPlacesRequest, CallSettings)

public override Operation<RemoveFulfillmentPlacesResponse, RemoveFulfillmentPlacesMetadata> RemoveFulfillmentPlaces(RemoveFulfillmentPlacesRequest request, CallSettings callSettings = null)

Incrementally removes place IDs from a [Product.fulfillment_info.place_ids][google.cloud.retail.v2.FulfillmentInfo.place_ids].

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, the removed place IDs are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestRemoveFulfillmentPlacesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<RemoveFulfillmentPlacesResponse, RemoveFulfillmentPlacesMetadata>

The RPC response.

Overrides

RemoveFulfillmentPlacesAsync(RemoveFulfillmentPlacesRequest, CallSettings)

public override Task<Operation<RemoveFulfillmentPlacesResponse, RemoveFulfillmentPlacesMetadata>> RemoveFulfillmentPlacesAsync(RemoveFulfillmentPlacesRequest request, CallSettings callSettings = null)

Incrementally removes place IDs from a [Product.fulfillment_info.place_ids][google.cloud.retail.v2.FulfillmentInfo.place_ids].

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, the removed place IDs are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestRemoveFulfillmentPlacesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<RemoveFulfillmentPlacesResponse, RemoveFulfillmentPlacesMetadata>>

A Task containing the RPC response.

Overrides

SetInventory(SetInventoryRequest, CallSettings)

public override Operation<SetInventoryResponse, SetInventoryMetadata> SetInventory(SetInventoryRequest request, CallSettings callSettings = null)

Updates inventory information for a [Product][google.cloud.retail.v2.Product] while respecting the last update timestamps of each inventory field.

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, updates are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

When inventory is updated with [CreateProduct][google.cloud.retail.v2.ProductService.CreateProduct] and [UpdateProduct][google.cloud.retail.v2.ProductService.UpdateProduct], the specified inventory field value(s) will overwrite any existing value(s) while ignoring the last update time for this field. Furthermore, the last update time for the specified inventory fields will be overwritten to the time of the [CreateProduct][google.cloud.retail.v2.ProductService.CreateProduct] or [UpdateProduct][google.cloud.retail.v2.ProductService.UpdateProduct] request.

If no inventory fields are set in [CreateProductRequest.product][google.cloud.retail.v2.CreateProductRequest.product], then any pre-existing inventory information for this product will be used.

If no inventory fields are set in [UpdateProductRequest.set_mask][], then any existing inventory information will be preserved.

Pre-existing inventory information can only be updated with [SetInventory][google.cloud.retail.v2.ProductService.SetInventory], [AddFulfillmentPlaces][google.cloud.retail.v2.ProductService.AddFulfillmentPlaces], and [RemoveFulfillmentPlaces][google.cloud.retail.v2.ProductService.RemoveFulfillmentPlaces].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestSetInventoryRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<SetInventoryResponse, SetInventoryMetadata>

The RPC response.

Overrides

SetInventoryAsync(SetInventoryRequest, CallSettings)

public override Task<Operation<SetInventoryResponse, SetInventoryMetadata>> SetInventoryAsync(SetInventoryRequest request, CallSettings callSettings = null)

Updates inventory information for a [Product][google.cloud.retail.v2.Product] while respecting the last update timestamps of each inventory field.

This process is asynchronous and does not require the [Product][google.cloud.retail.v2.Product] to exist before updating fulfillment information. If the request is valid, the update will be enqueued and processed downstream. As a consequence, when a response is returned, updates are not immediately manifested in the [Product][google.cloud.retail.v2.Product] queried by [GetProduct][google.cloud.retail.v2.ProductService.GetProduct] or [ListProducts][google.cloud.retail.v2.ProductService.ListProducts].

When inventory is updated with [CreateProduct][google.cloud.retail.v2.ProductService.CreateProduct] and [UpdateProduct][google.cloud.retail.v2.ProductService.UpdateProduct], the specified inventory field value(s) will overwrite any existing value(s) while ignoring the last update time for this field. Furthermore, the last update time for the specified inventory fields will be overwritten to the time of the [CreateProduct][google.cloud.retail.v2.ProductService.CreateProduct] or [UpdateProduct][google.cloud.retail.v2.ProductService.UpdateProduct] request.

If no inventory fields are set in [CreateProductRequest.product][google.cloud.retail.v2.CreateProductRequest.product], then any pre-existing inventory information for this product will be used.

If no inventory fields are set in [UpdateProductRequest.set_mask][], then any existing inventory information will be preserved.

Pre-existing inventory information can only be updated with [SetInventory][google.cloud.retail.v2.ProductService.SetInventory], [AddFulfillmentPlaces][google.cloud.retail.v2.ProductService.AddFulfillmentPlaces], and [RemoveFulfillmentPlaces][google.cloud.retail.v2.ProductService.RemoveFulfillmentPlaces].

This feature is only available for users who have Retail Search enabled. Please submit a form here to contact cloud sales if you are interested in using Retail Search.

Parameters
NameDescription
requestSetInventoryRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<SetInventoryResponse, SetInventoryMetadata>>

A Task containing the RPC response.

Overrides

UpdateProduct(UpdateProductRequest, CallSettings)

public override Product UpdateProduct(UpdateProductRequest request, CallSettings callSettings = null)

Updates a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestUpdateProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Product

The RPC response.

Overrides

UpdateProductAsync(UpdateProductRequest, CallSettings)

public override Task<Product> UpdateProductAsync(UpdateProductRequest request, CallSettings callSettings = null)

Updates a [Product][google.cloud.retail.v2.Product].

Parameters
NameDescription
requestUpdateProductRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Product>

A Task containing the RPC response.

Overrides