Class ProductServiceGrpc.ProductServiceFutureStub (2.30.0)

public static final class ProductServiceGrpc.ProductServiceFutureStub extends AbstractFutureStub<ProductServiceGrpc.ProductServiceFutureStub>

A stub to allow clients to do ListenableFuture-style rpc calls to service ProductService.

Service for ingesting Product information of the customer's website.

Inheritance

java.lang.Object > io.grpc.stub.AbstractStub > io.grpc.stub.AbstractFutureStub > ProductServiceGrpc.ProductServiceFutureStub

Methods

addFulfillmentPlaces(AddFulfillmentPlacesRequest request)

public ListenableFuture<Operation> addFulfillmentPlaces(AddFulfillmentPlacesRequest request)

It is recommended to use the ProductService.AddLocalInventories method instead of ProductService.AddFulfillmentPlaces. ProductService.AddLocalInventories achieves the same results but provides more fine-grained control over ingesting local inventory data. Incrementally adds place IDs to Product.fulfillment_info.place_ids. This process is asynchronous and does not require the 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 queried by ProductService.GetProduct or ProductService.ListProducts. The returned Operations will be obsolete after 1 day, and GetOperation API will return NOT_FOUND afterwards. If conflicting updates are issued, the Operations associated with the stale updates will not be marked as done until being obsolete.

Parameter
NameDescription
requestAddFulfillmentPlacesRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

addLocalInventories(AddLocalInventoriesRequest request)

public ListenableFuture<Operation> addLocalInventories(AddLocalInventoriesRequest request)

Updates local inventory information for a Product at a list of places, while respecting the last update timestamps of each inventory field. This process is asynchronous and does not require the Product to exist before updating inventory 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 queried by ProductService.GetProduct or ProductService.ListProducts. Local inventory information can only be modified using this method. ProductService.CreateProduct and ProductService.UpdateProduct has no effect on local inventories. The returned Operations will be obsolete after 1 day, and GetOperation API will return NOT_FOUND afterwards. If conflicting updates are issued, the Operations associated with the stale updates will not be marked as done until being obsolete.

Parameter
NameDescription
requestAddLocalInventoriesRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

build(Channel channel, CallOptions callOptions)

protected ProductServiceGrpc.ProductServiceFutureStub build(Channel channel, CallOptions callOptions)
Parameters
NameDescription
channelio.grpc.Channel
callOptionsio.grpc.CallOptions
Returns
TypeDescription
ProductServiceGrpc.ProductServiceFutureStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

createProduct(CreateProductRequest request)

public ListenableFuture<Product> createProduct(CreateProductRequest request)

Creates a Product.

Parameter
NameDescription
requestCreateProductRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Product>

deleteProduct(DeleteProductRequest request)

public ListenableFuture<Empty> deleteProduct(DeleteProductRequest request)

Deletes a Product.

Parameter
NameDescription
requestDeleteProductRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Empty>

getProduct(GetProductRequest request)

public ListenableFuture<Product> getProduct(GetProductRequest request)

Gets a Product.

Parameter
NameDescription
requestGetProductRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Product>

importProducts(ImportProductsRequest request)

public ListenableFuture<Operation> importProducts(ImportProductsRequest request)

Bulk import of multiple Products. Request processing may be synchronous. Non-existing items are created. Note that it is possible for a subset of the Products to be successfully updated.

Parameter
NameDescription
requestImportProductsRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

listProducts(ListProductsRequest request)

public ListenableFuture<ListProductsResponse> listProducts(ListProductsRequest request)

Gets a list of Products.

Parameter
NameDescription
requestListProductsRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<ListProductsResponse>

purgeProducts(PurgeProductsRequest request)

public ListenableFuture<Operation> purgeProducts(PurgeProductsRequest request)

Permanently deletes all selected Products under a branch. This process is asynchronous. If the request is valid, the removal will be enqueued and processed offline. Depending on the number of Products, this operation could take hours to complete. Before the operation completes, some Products may still be returned by ProductService.GetProduct or ProductService.ListProducts. Depending on the number of Products, this operation could take hours to complete. To get a sample of Products that would be deleted, set PurgeProductsRequest.force to false.

Parameter
NameDescription
requestPurgeProductsRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

removeFulfillmentPlaces(RemoveFulfillmentPlacesRequest request)

public ListenableFuture<Operation> removeFulfillmentPlaces(RemoveFulfillmentPlacesRequest request)

It is recommended to use the ProductService.RemoveLocalInventories method instead of ProductService.RemoveFulfillmentPlaces. ProductService.RemoveLocalInventories achieves the same results but provides more fine-grained control over ingesting local inventory data. Incrementally removes place IDs from a Product.fulfillment_info.place_ids. This process is asynchronous and does not require the 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 queried by ProductService.GetProduct or ProductService.ListProducts. The returned Operations will be obsolete after 1 day, and GetOperation API will return NOT_FOUND afterwards. If conflicting updates are issued, the Operations associated with the stale updates will not be marked as done until being obsolete.

Parameter
NameDescription
requestRemoveFulfillmentPlacesRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

removeLocalInventories(RemoveLocalInventoriesRequest request)

public ListenableFuture<Operation> removeLocalInventories(RemoveLocalInventoriesRequest request)

Remove local inventory information for a Product at a list of places at a removal timestamp. This process is asynchronous. If the request is valid, the removal will be enqueued and processed downstream. As a consequence, when a response is returned, removals are not immediately manifested in the Product queried by ProductService.GetProduct or ProductService.ListProducts. Local inventory information can only be removed using this method. ProductService.CreateProduct and ProductService.UpdateProduct has no effect on local inventories. The returned Operations will be obsolete after 1 day, and GetOperation API will return NOT_FOUND afterwards. If conflicting updates are issued, the Operations associated with the stale updates will not be marked as done until being obsolete.

Parameter
NameDescription
requestRemoveLocalInventoriesRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

setInventory(SetInventoryRequest request)

public ListenableFuture<Operation> setInventory(SetInventoryRequest request)

Updates inventory information for a Product while respecting the last update timestamps of each inventory field. This process is asynchronous and does not require the Product to exist before updating fulfillment information. If the request is valid, the update is enqueued and processed downstream. As a consequence, when a response is returned, updates are not immediately manifested in the Product queried by ProductService.GetProduct or ProductService.ListProducts. When inventory is updated with ProductService.CreateProduct and ProductService.UpdateProduct, the specified inventory field value(s) overwrite any existing value(s) while ignoring the last update time for this field. Furthermore, the last update times for the specified inventory fields are overwritten by the times of the ProductService.CreateProduct or ProductService.UpdateProduct request. If no inventory fields are set in CreateProductRequest.product, then any pre-existing inventory information for this product is used. If no inventory fields are set in SetInventoryRequest.set_mask, then any existing inventory information is preserved. Pre-existing inventory information can only be updated with ProductService.SetInventory, ProductService.AddFulfillmentPlaces, and ProductService.RemoveFulfillmentPlaces. The returned Operations is obsolete after one day, and the GetOperation API returns NOT_FOUND afterwards. If conflicting updates are issued, the Operations associated with the stale updates are not marked as done until they are obsolete.

Parameter
NameDescription
requestSetInventoryRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Operation>

updateProduct(UpdateProductRequest request)

public ListenableFuture<Product> updateProduct(UpdateProductRequest request)

Updates a Product.

Parameter
NameDescription
requestUpdateProductRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Product>