Search in sources :

Example 51 with Product

use of com.google.cloud.vision.v1.Product in project java-vision by googleapis.

the class ProductSetManagement method createProductSet.

// [START vision_product_search_create_product_set]
/**
 * Create a product set
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productSetId - Id of the product set.
 * @param productSetDisplayName - Display name of the product set.
 * @throws IOException - on I/O errors.
 */
public static void createProductSet(String projectId, String computeRegion, String productSetId, String productSetDisplayName) throws IOException {
    try (ProductSearchClient client = ProductSearchClient.create()) {
        // A resource that represents Google Cloud Platform location.
        String formattedParent = ProductSearchClient.formatLocationName(projectId, computeRegion);
        // Create a product set with the product set specification in the region.
        ProductSet myProductSet = ProductSet.newBuilder().setDisplayName(productSetDisplayName).build();
        CreateProductSetRequest request = CreateProductSetRequest.newBuilder().setParent(formattedParent).setProductSet(myProductSet).setProductSetId(productSetId).build();
        ProductSet productSet = client.createProductSet(request);
        // Display the product set information
        System.out.println(String.format("Product set name: %s", productSet.getName()));
    }
}
Also used : ProductSearchClient(com.google.cloud.vision.v1.ProductSearchClient) CreateProductSetRequest(com.google.cloud.vision.v1.CreateProductSetRequest) ProductSet(com.google.cloud.vision.v1.ProductSet)

Example 52 with Product

use of com.google.cloud.vision.v1.Product in project java-vision by googleapis.

the class PurgeProducts method purgeOrphanProducts.

// Delete the product and all its reference images.
public static void purgeOrphanProducts(String projectId, String computeRegion) throws Exception {
    try (ProductSearchClient client = ProductSearchClient.create()) {
        String parent = LocationName.format(projectId, computeRegion);
        // The purge operation is async.
        PurgeProductsRequest request = PurgeProductsRequest.newBuilder().setDeleteOrphanProducts(true).setForce(true).setParent(parent).build();
        OperationFuture response = client.purgeProductsAsync(request);
        response.getPollingFuture().get(180, TimeUnit.SECONDS);
        System.out.println("Orphan products deleted.");
    }
}
Also used : PurgeProductsRequest(com.google.cloud.vision.v1.PurgeProductsRequest) ProductSearchClient(com.google.cloud.vision.v1.ProductSearchClient) OperationFuture(com.google.api.gax.longrunning.OperationFuture)

Example 53 with Product

use of com.google.cloud.vision.v1.Product in project java-vision by googleapis.

the class ReferenceImageManagement method getReferenceImage.

// [END vision_product_search_list_reference_images]
// [START vision_product_search_get_reference_image]
/**
 * Get info about a reference image.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @param referenceImageId - Id of the image.
 * @throws IOException - on I/O errors.
 */
public static void getReferenceImage(String projectId, String computeRegion, String productId, String referenceImageId) throws IOException {
    try (ProductSearchClient client = ProductSearchClient.create()) {
        // Get the full path of the reference image.
        String formattedName = ImageName.format(projectId, computeRegion, productId, referenceImageId);
        // Get complete detail of the reference image.
        ReferenceImage image = client.getReferenceImage(formattedName);
        // Display the reference image information.
        System.out.println(String.format("Reference image name: %s", image.getName()));
        System.out.println(String.format("Reference image id: %s", image.getName().substring(image.getName().lastIndexOf('/') + 1)));
        System.out.println(String.format("Reference image uri: %s", image.getUri()));
        System.out.println(String.format("Reference image bounding polygons: %s \n", image.getBoundingPolysList().toString()));
    }
}
Also used : ProductSearchClient(com.google.cloud.vision.v1.ProductSearchClient) ReferenceImage(com.google.cloud.vision.v1.ReferenceImage)

Example 54 with Product

use of com.google.cloud.vision.v1.Product in project java-vision by googleapis.

the class ReferenceImageManagement method deleteReferenceImage.

// [END vision_product_search_get_reference_image]
// [START vision_product_search_delete_reference_image]
/**
 * Delete a reference image.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @param referenceImageId - Id of the image.
 * @throws IOException - on I/O errors.
 */
public static void deleteReferenceImage(String projectId, String computeRegion, String productId, String referenceImageId) throws IOException {
    try (ProductSearchClient client = ProductSearchClient.create()) {
        // Get the full path of the reference image.
        String formattedName = ImageName.format(projectId, computeRegion, productId, referenceImageId);
        // Delete the reference image.
        client.deleteReferenceImage(formattedName);
        System.out.println("Reference image deleted from product.");
    }
}
Also used : ProductSearchClient(com.google.cloud.vision.v1.ProductSearchClient)

Example 55 with Product

use of com.google.cloud.vision.v1.Product in project java-vision by googleapis.

the class ReferenceImageManagement method createReferenceImage.

// [START vision_product_search_create_reference_image]
/**
 * Create a reference image.
 *
 * @param projectId - Id of the project.
 * @param computeRegion - Region name.
 * @param productId - Id of the product.
 * @param referenceImageId - Id of the image.
 * @param gcsUri - Google Cloud Storage path of the input image.
 * @throws IOException - on I/O errors.
 */
public static void createReferenceImage(String projectId, String computeRegion, String productId, String referenceImageId, String gcsUri) throws IOException {
    try (ProductSearchClient client = ProductSearchClient.create()) {
        // Get the full path of the product.
        String formattedParent = ProductSearchClient.formatProductName(projectId, computeRegion, productId);
        // Create a reference image.
        ReferenceImage referenceImage = ReferenceImage.newBuilder().setUri(gcsUri).build();
        ReferenceImage image = client.createReferenceImage(formattedParent, referenceImage, referenceImageId);
        // Display the reference image information.
        System.out.println(String.format("Reference image name: %s", image.getName()));
        System.out.println(String.format("Reference image uri: %s", image.getUri()));
    }
}
Also used : ProductSearchClient(com.google.cloud.vision.v1.ProductSearchClient) ReferenceImage(com.google.cloud.vision.v1.ReferenceImage)

Aggregations

Product (com.google.cloud.retail.v2.Product)20 ProductSearchClient (com.google.cloud.vision.v1.ProductSearchClient)19 Product (com.google.cloud.vision.v1.Product)10 Test (org.junit.Test)9 SetupCleanup.deleteProduct (setup.SetupCleanup.deleteProduct)9 ProductServiceClient (com.google.cloud.retail.v2.ProductServiceClient)8 SetupCleanup.createProduct (setup.SetupCleanup.createProduct)6 AbstractMessage (com.google.protobuf.AbstractMessage)5 ProductSet (com.google.cloud.vision.v1.ProductSet)4 ReferenceImage (com.google.cloud.vision.v1.ReferenceImage)4 Product (com.haulmont.cuba.testmodel.sales_1.Product)4 Test (org.junit.jupiter.api.Test)4 NotFoundException (com.google.api.gax.rpc.NotFoundException)3 CreateProductRequest (com.google.cloud.retail.v2.CreateProductRequest)3 GetProductRequest (com.google.cloud.retail.v2.GetProductRequest)3 QueryRunner (com.haulmont.bali.db.QueryRunner)3 Id (com.haulmont.cuba.core.entity.contracts.Id)3 com.haulmont.cuba.core.global (com.haulmont.cuba.core.global)3 TestContainer (com.haulmont.cuba.testsupport.TestContainer)3 ByteArrayOutputStream (java.io.ByteArrayOutputStream)3