pub struct CatalogService { /* private fields */ }Expand description
Implements a client for the Vertex AI Search for commerce API.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
let client = CatalogService::builder().build().await?;
let parent = "parent_value";
let mut list = client.list_catalogs()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}§Service Description
Service for managing catalog configuration.
§Configuration
To configure CatalogService use the with_* methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://retail.googleapis.com). Applications using regional endpoints or running in restricted networks (e.g. a network configured override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
CatalogService holds a connection pool internally, it is advised to
create one and reuse it. You do not need to wrap CatalogService in
an Rc or Arc to reuse it, because it
already uses an Arc internally.
Implementations§
Source§impl CatalogService
impl CatalogService
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for CatalogService.
let client = CatalogService::builder().build().await?;Sourcepub fn from_stub<T>(stub: T) -> Selfwhere
T: CatalogService + 'static,
pub fn from_stub<T>(stub: T) -> Selfwhere
T: CatalogService + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn list_catalogs(&self) -> ListCatalogs
pub fn list_catalogs(&self) -> ListCatalogs
Lists all the Catalogs associated with the project.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, parent: &str
) -> Result<()> {
let mut list = client.list_catalogs()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn update_catalog(&self) -> UpdateCatalog
pub fn update_catalog(&self) -> UpdateCatalog
Updates the Catalogs.
§Example
use google_cloud_wkt::FieldMask;
use google_cloud_retail_v2::model::Catalog;
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, name: &str
) -> Result<()> {
let response = client.update_catalog()
.set_catalog(
Catalog::new().set_name(name)/* set fields */
)
.set_update_mask(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn set_default_branch(&self) -> SetDefaultBranch
pub fn set_default_branch(&self) -> SetDefaultBranch
Set a specified branch id as default branch. API methods such as SearchService.Search, ProductService.GetProduct, ProductService.ListProducts will treat requests using “default_branch” to the actual branch id set as default.
For example, if projects/*/locations/*/catalogs/*/branches/1 is set as
default, setting
SearchRequest.branch to
projects/*/locations/*/catalogs/*/branches/default_branch is equivalent
to setting
SearchRequest.branch to
projects/*/locations/*/catalogs/*/branches/1.
Using multiple branches can be useful when developers would like
to have a staging branch to test and verify for future usage. When it
becomes ready, developers switch on the staging branch using this API
while keeping using
projects/*/locations/*/catalogs/*/branches/default_branch as
SearchRequest.branch to
route the traffic to this staging branch.
CAUTION: If you have live predict/search traffic, switching the default branch could potentially cause outages if the ID space of the new branch is very different from the old one.
More specifically:
- PredictionService will only return product IDs from branch {newBranch}.
- SearchService will only return product IDs from branch {newBranch} (if branch is not explicitly set).
- UserEventService will only join events with products from branch {newBranch}.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
client.set_default_branch()
/* set fields */
.send().await?;
Ok(())
}Sourcepub fn get_default_branch(&self) -> GetDefaultBranch
pub fn get_default_branch(&self) -> GetDefaultBranch
Get which branch is currently default branch set by CatalogService.SetDefaultBranch method under a specified parent catalog.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let response = client.get_default_branch()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn get_completion_config(&self) -> GetCompletionConfig
pub fn get_completion_config(&self) -> GetCompletionConfig
Gets a CompletionConfig.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, name: &str
) -> Result<()> {
let response = client.get_completion_config()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_completion_config(&self) -> UpdateCompletionConfig
pub fn update_completion_config(&self) -> UpdateCompletionConfig
Updates the CompletionConfigs.
§Example
use google_cloud_wkt::FieldMask;
use google_cloud_retail_v2::model::CompletionConfig;
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, name: &str
) -> Result<()> {
let response = client.update_completion_config()
.set_completion_config(
CompletionConfig::new().set_name(name)/* set fields */
)
.set_update_mask(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn get_attributes_config(&self) -> GetAttributesConfig
pub fn get_attributes_config(&self) -> GetAttributesConfig
Gets an AttributesConfig.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, name: &str
) -> Result<()> {
let response = client.get_attributes_config()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_attributes_config(&self) -> UpdateAttributesConfig
pub fn update_attributes_config(&self) -> UpdateAttributesConfig
Updates the AttributesConfig.
The catalog attributes in the request will be updated in the catalog, or inserted if they do not exist. Existing catalog attributes not included in the request will remain unchanged. Attributes that are assigned to products, but do not exist at the catalog level, are always included in the response. The product attribute is assigned default values for missing catalog attribute fields, e.g., searchable and dynamic facetable options.
§Example
use google_cloud_wkt::FieldMask;
use google_cloud_retail_v2::model::AttributesConfig;
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService, name: &str
) -> Result<()> {
let response = client.update_attributes_config()
.set_attributes_config(
AttributesConfig::new().set_name(name)/* set fields */
)
.set_update_mask(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn add_catalog_attribute(&self) -> AddCatalogAttribute
pub fn add_catalog_attribute(&self) -> AddCatalogAttribute
Adds the specified CatalogAttribute to the AttributesConfig.
If the CatalogAttribute to add already exists, an ALREADY_EXISTS error is returned.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let response = client.add_catalog_attribute()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn remove_catalog_attribute(&self) -> RemoveCatalogAttribute
pub fn remove_catalog_attribute(&self) -> RemoveCatalogAttribute
Removes the specified CatalogAttribute from the AttributesConfig.
If the CatalogAttribute to remove does not exist, a NOT_FOUND error is returned.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let response = client.remove_catalog_attribute()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn replace_catalog_attribute(&self) -> ReplaceCatalogAttribute
pub fn replace_catalog_attribute(&self) -> ReplaceCatalogAttribute
Replaces the specified CatalogAttribute in the AttributesConfig by updating the catalog attribute with the same CatalogAttribute.key.
If the CatalogAttribute to replace does not exist, a NOT_FOUND error is returned.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let response = client.replace_catalog_attribute()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_operations(&self) -> ListOperations
pub fn list_operations(&self) -> ListOperations
Provides the Operations service functionality in this service.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let mut list = client.list_operations()
/* set fields */
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_operation(&self) -> GetOperation
pub fn get_operation(&self) -> GetOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_retail_v2::Result;
async fn sample(
client: &CatalogService
) -> Result<()> {
let response = client.get_operation()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Trait Implementations§
Source§impl Clone for CatalogService
impl Clone for CatalogService
Source§fn clone(&self) -> CatalogService
fn clone(&self) -> CatalogService
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more