Search in sources :

Example 11 with FeedItem

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

the class MigrateToExtensionSettings method deleteOldFeedItems.

/**
 * Deletes the old feed items for which extension settings have been created.
 */
private static void deleteOldFeedItems(AdWordsServicesInterface adWordsServices, AdWordsSession session, Set<Long> feedItemIds, Feed feed) throws RemoteException {
    // Get the FeedItemService.
    FeedItemServiceInterface feedItemService = adWordsServices.get(session, FeedItemServiceInterface.class);
    if (feedItemIds.isEmpty()) {
        return;
    }
    List<FeedItemOperation> operations = new ArrayList<>();
    for (Long feedItemId : feedItemIds) {
        FeedItemOperation operation = new FeedItemOperation();
        FeedItem feedItem = new FeedItem();
        feedItem.setFeedId(feed.getId());
        feedItem.setFeedItemId(feedItemId);
        operation.setOperand(feedItem);
        operation.setOperator(Operator.REMOVE);
        operations.add(operation);
    }
    feedItemService.mutate(operations.toArray(new FeedItemOperation[operations.size()]));
}
Also used : FeedItem(com.google.api.ads.adwords.axis.v201809.cm.FeedItem) ExtensionFeedItem(com.google.api.ads.adwords.axis.v201809.cm.ExtensionFeedItem) SitelinkFeedItem(com.google.api.ads.adwords.axis.v201809.cm.SitelinkFeedItem) FeedItemServiceInterface(com.google.api.ads.adwords.axis.v201809.cm.FeedItemServiceInterface) ArrayList(java.util.ArrayList) FeedItemOperation(com.google.api.ads.adwords.axis.v201809.cm.FeedItemOperation)

Example 12 with FeedItem

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

the class AddSiteLinksUsingFeeds method restrictFeedItemToGeoTarget.

/**
 * Restricts the first feed item in {@code siteLinksData} to only serve with ads for the specified
 * location ID.
 */
private static void restrictFeedItemToGeoTarget(AdWordsServicesInterface adWordsServices, AdWordsSession session, FeedItem feedItem, Long locationId) throws RemoteException {
    FeedItemTargetServiceInterface feedItemTargetService = adWordsServices.get(session, FeedItemTargetServiceInterface.class);
    // Optional: Restrict the feed item to only serve with ads for the specified geo target.
    FeedItemCriterionTarget feedItemCriterionTarget = new FeedItemCriterionTarget();
    feedItemCriterionTarget.setFeedId(feedItem.getFeedId());
    feedItemCriterionTarget.setFeedItemId(feedItem.getFeedItemId());
    Location location = new Location();
    // The IDs can be found in the documentation or retrieved with the LocationCriterionService.
    location.setId(locationId);
    feedItemCriterionTarget.setCriterion(location);
    FeedItemTargetOperation operation = new FeedItemTargetOperation();
    operation.setOperand(feedItemCriterionTarget);
    operation.setOperator(Operator.ADD);
    feedItemCriterionTarget = (FeedItemCriterionTarget) feedItemTargetService.mutate(new FeedItemTargetOperation[] { operation }).getValue(0);
    System.out.printf("Feed item target for feed ID %d and feed item ID %d was created to restrict serving to " + "location ID %d'.%n", feedItemCriterionTarget.getFeedId(), feedItemCriterionTarget.getFeedItemId(), feedItemCriterionTarget.getCriterion().getId());
}
Also used : FeedItemTargetServiceInterface(com.google.api.ads.adwords.axis.v201809.cm.FeedItemTargetServiceInterface) FeedItemCriterionTarget(com.google.api.ads.adwords.axis.v201809.cm.FeedItemCriterionTarget) FeedItemTargetOperation(com.google.api.ads.adwords.axis.v201809.cm.FeedItemTargetOperation) Location(com.google.api.ads.adwords.axis.v201809.cm.Location)

Aggregations

FeedItem (com.google.api.ads.adwords.axis.v201809.cm.FeedItem)9 FeedItemOperation (com.google.api.ads.adwords.axis.v201809.cm.FeedItemOperation)7 FeedItemServiceInterface (com.google.api.ads.adwords.axis.v201809.cm.FeedItemServiceInterface)5 FeedItemAttributeValue (com.google.api.ads.adwords.axis.v201809.cm.FeedItemAttributeValue)4 ArrayList (java.util.ArrayList)4 ExtensionFeedItem (com.google.api.ads.adwords.axis.v201809.cm.ExtensionFeedItem)3 FeedItemReturnValue (com.google.api.ads.adwords.axis.v201809.cm.FeedItemReturnValue)3 SitelinkFeedItem (com.google.api.ads.adwords.axis.v201809.cm.SitelinkFeedItem)3 FeedItemTargetOperation (com.google.api.ads.adwords.axis.v201809.cm.FeedItemTargetOperation)2 FeedItemTargetServiceInterface (com.google.api.ads.adwords.axis.v201809.cm.FeedItemTargetServiceInterface)2 ApiException (com.google.api.ads.adwords.axis.v201809.cm.ApiException)1 ConstantOperand (com.google.api.ads.adwords.axis.v201809.cm.ConstantOperand)1 CustomerFeed (com.google.api.ads.adwords.axis.v201809.cm.CustomerFeed)1 CustomerFeedOperation (com.google.api.ads.adwords.axis.v201809.cm.CustomerFeedOperation)1 CustomerFeedReturnValue (com.google.api.ads.adwords.axis.v201809.cm.CustomerFeedReturnValue)1 CustomerFeedServiceInterface (com.google.api.ads.adwords.axis.v201809.cm.CustomerFeedServiceInterface)1 Feed (com.google.api.ads.adwords.axis.v201809.cm.Feed)1 FeedItemAdGroupTarget (com.google.api.ads.adwords.axis.v201809.cm.FeedItemAdGroupTarget)1 FeedItemCriterionTarget (com.google.api.ads.adwords.axis.v201809.cm.FeedItemCriterionTarget)1 FeedItemGeoRestriction (com.google.api.ads.adwords.axis.v201809.cm.FeedItemGeoRestriction)1