Search in sources :

Example 1 with ProductType

use of com.google.api.ads.adwords.axis.v201809.cm.ProductType in project googleads-java-lib by googleads.

the class ProductTypeComparatorTest method testDifferByLevel.

@Test
public void testDifferByLevel() {
    ProductType type1 = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L1, "ABC");
    ProductType type2 = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L2, "AbC");
    assertThat("Attributes that differ in level # should yield compareTo != 0", comparator.compare(type1, type2), Matchers.not(0));
}
Also used : ProductType(com.google.api.ads.adwords.axis.v201809.cm.ProductType) Test(org.junit.Test)

Example 2 with ProductType

use of com.google.api.ads.adwords.axis.v201809.cm.ProductType in project googleads-java-lib by googleads.

the class ProductDimensionsTest method testCreateType.

/**
 * Test method for createType.
 */
@Test
public void testCreateType() {
    ProductType type = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L1, STRING_VALUE);
    assertEquals(STRING_VALUE, type.getValue());
}
Also used : ProductType(com.google.api.ads.adwords.axis.v201809.cm.ProductType) Test(org.junit.Test)

Example 3 with ProductType

use of com.google.api.ads.adwords.axis.v201809.cm.ProductType in project googleads-java-lib by googleads.

the class ProductDimensions method createType.

/**
 * Creates a new ProductType.
 *
 * @param productDimensionType required
 * @param productTypeValue may be null if creating an "other" dimension
 */
public static ProductType createType(ProductDimensionType productDimensionType, @Nullable String productTypeValue) {
    Preconditions.checkNotNull(productDimensionType, "ProductDimensionType is required when creating a ProductType");
    ProductType productType = new ProductType();
    productType.setType(productDimensionType);
    productType.setValue(productTypeValue);
    return productType;
}
Also used : ProductType(com.google.api.ads.adwords.axis.v201809.cm.ProductType)

Example 4 with ProductType

use of com.google.api.ads.adwords.axis.v201809.cm.ProductType in project googleads-java-lib by googleads.

the class AddProductScope method runExample.

/**
 * Runs the example.
 *
 * @param adWordsServices the services factory.
 * @param session the session.
 * @param campaignId the ID of the shopping campaign.
 * @throws ApiException if the API request failed with one or more service errors.
 * @throws RemoteException if the API request failed due to other errors.
 */
public static void runExample(AdWordsServicesInterface adWordsServices, AdWordsSession session, Long campaignId) throws RemoteException {
    // Get the campaign criterion service.
    CampaignCriterionServiceInterface campaignCriterionService = adWordsServices.get(session, CampaignCriterionServiceInterface.class);
    ProductScope productScope = new ProductScope();
    // This set of dimensions is for demonstration purposes only. It would be
    // extremely unlikely that you want to include so many dimensions in your
    // product scope.
    ProductBrand productBrand = new ProductBrand();
    productBrand.setValue("Nexus");
    ProductCanonicalCondition productCanonicalCondition = new ProductCanonicalCondition();
    productCanonicalCondition.setCondition(ProductCanonicalConditionCondition.NEW);
    ProductCustomAttribute productCustomAttribute = new ProductCustomAttribute();
    productCustomAttribute.setType(ProductDimensionType.CUSTOM_ATTRIBUTE_0);
    productCustomAttribute.setValue("my attribute value");
    ProductOfferId productOfferId = new ProductOfferId();
    productOfferId.setValue("book1");
    ProductType productTypeLevel1Media = new ProductType();
    productTypeLevel1Media.setType(ProductDimensionType.PRODUCT_TYPE_L1);
    productTypeLevel1Media.setValue("Media");
    ProductType productTypeLevel2Books = new ProductType();
    productTypeLevel2Books.setType(ProductDimensionType.PRODUCT_TYPE_L2);
    productTypeLevel2Books.setValue("Books");
    // The value for the bidding category is a fixed ID for the 'Luggage & Bags'
    // category. You can retrieve IDs for categories from the ConstantDataService.
    // See the 'GetProductCategoryTaxonomy' example for more details.
    ProductBiddingCategory productBiddingCategory = new ProductBiddingCategory();
    productBiddingCategory.setType(ProductDimensionType.BIDDING_CATEGORY_L1);
    productBiddingCategory.setValue(-5914235892932915235L);
    productScope.setDimensions(new ProductDimension[] { productBrand, productCanonicalCondition, productCustomAttribute, productOfferId, productTypeLevel1Media, productTypeLevel2Books, productBiddingCategory });
    CampaignCriterion campaignCriterion = new CampaignCriterion();
    campaignCriterion.setCampaignId(campaignId);
    campaignCriterion.setCriterion(productScope);
    // Create operation.
    CampaignCriterionOperation criterionOperation = new CampaignCriterionOperation();
    criterionOperation.setOperand(campaignCriterion);
    criterionOperation.setOperator(Operator.ADD);
    // Make the mutate request.
    CampaignCriterionReturnValue result = campaignCriterionService.mutate(new CampaignCriterionOperation[] { criterionOperation });
    // Display the result.
    System.out.printf("Created a ProductScope criterion with ID %d.%n", result.getValue(0).getCriterion().getId());
}
Also used : CampaignCriterionReturnValue(com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionReturnValue) ProductBrand(com.google.api.ads.adwords.axis.v201809.cm.ProductBrand) ProductOfferId(com.google.api.ads.adwords.axis.v201809.cm.ProductOfferId) CampaignCriterionOperation(com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionOperation) ProductCanonicalCondition(com.google.api.ads.adwords.axis.v201809.cm.ProductCanonicalCondition) ProductScope(com.google.api.ads.adwords.axis.v201809.cm.ProductScope) CampaignCriterion(com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterion) ProductCustomAttribute(com.google.api.ads.adwords.axis.v201809.cm.ProductCustomAttribute) ProductType(com.google.api.ads.adwords.axis.v201809.cm.ProductType) CampaignCriterionServiceInterface(com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionServiceInterface) ProductBiddingCategory(com.google.api.ads.adwords.axis.v201809.cm.ProductBiddingCategory)

Example 5 with ProductType

use of com.google.api.ads.adwords.axis.v201809.cm.ProductType in project googleads-java-lib by googleads.

the class ProductTypeComparatorTest method testCaseInsensitive.

@Test
public void testCaseInsensitive() {
    ProductType type1 = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L1, "ABC");
    ProductType type2 = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L1, "AbC");
    assertEquals("ProductTypes that only differ in case should be equivalent", 0, comparator.compare(type1, type2));
}
Also used : ProductType(com.google.api.ads.adwords.axis.v201809.cm.ProductType) Test(org.junit.Test)

Aggregations

ProductType (com.google.api.ads.adwords.axis.v201809.cm.ProductType)5 Test (org.junit.Test)3 CampaignCriterion (com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterion)1 CampaignCriterionOperation (com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionOperation)1 CampaignCriterionReturnValue (com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionReturnValue)1 CampaignCriterionServiceInterface (com.google.api.ads.adwords.axis.v201809.cm.CampaignCriterionServiceInterface)1 ProductBiddingCategory (com.google.api.ads.adwords.axis.v201809.cm.ProductBiddingCategory)1 ProductBrand (com.google.api.ads.adwords.axis.v201809.cm.ProductBrand)1 ProductCanonicalCondition (com.google.api.ads.adwords.axis.v201809.cm.ProductCanonicalCondition)1 ProductCustomAttribute (com.google.api.ads.adwords.axis.v201809.cm.ProductCustomAttribute)1 ProductOfferId (com.google.api.ads.adwords.axis.v201809.cm.ProductOfferId)1 ProductScope (com.google.api.ads.adwords.axis.v201809.cm.ProductScope)1