Search in sources :

Example 16 with Location

use of com.google.api.ads.admanager.axis.v202205.Location in project googleads-java-lib by googleads.

the class AsyncDownloadReport method runExample.

/**
 * Runs the example.
 *
 * @param adManagerServices the services factory.
 * @param session the session.
 * @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(AdManagerServices adManagerServices, AdManagerSession session) throws RemoteException {
    // Get the ReportService.
    ReportServiceInterface reportService = adManagerServices.get(session, ReportServiceInterface.class);
    // Create report query.
    ReportQuery reportQuery = new ReportQuery();
    reportQuery.setDimensions(new Dimension[] { Dimension.DATE, Dimension.ORDER_ID });
    reportQuery.setColumns(new Column[] { Column.AD_SERVER_IMPRESSIONS });
    // Set the dynamic date range type or a custom start and end date.
    reportQuery.setDateRangeType(DateRangeType.LAST_WEEK);
    // Create report job.
    ReportJob reportJob = new ReportJob();
    reportJob.setReportQuery(reportQuery);
    // Run report job.
    reportJob = reportService.runReportJob(reportJob);
    // Create report downloader.
    final ReportDownloader reportDownloader = new ReportDownloader(reportService, reportJob.getId());
    reportDownloader.whenReportReady(new ReportCallback() {

        @Override
        public void onSuccess() {
            try {
                // Change to your file location.
                File file = File.createTempFile("async-report-", ".csv.gz");
                System.out.printf("Downloading report to %s ...", file.toString());
                // Download the report.
                ReportDownloadOptions options = new ReportDownloadOptions();
                options.setExportFormat(ExportFormat.CSV_DUMP);
                options.setUseGzipCompression(true);
                URL url = reportDownloader.getDownloadUrl(options);
                Resources.asByteSource(url).copyTo(Files.asByteSink(file));
                System.out.println("done.");
            } catch (IOException e) {
                System.err.println("Failed to write report.");
            }
        }

        @Override
        public void onInterruption() {
            System.err.println("Report download interupted.");
        }

        @Override
        public void onFailure() {
            System.err.println("Report download failed.");
        }

        @Override
        public void onException(Exception e) {
            System.err.println("Report download failed.");
            e.printStackTrace();
        }
    });
}
Also used : ReportDownloader(com.google.api.ads.admanager.axis.utils.v202205.ReportDownloader) ReportCallback(com.google.api.ads.admanager.lib.utils.ReportCallback) ReportDownloadOptions(com.google.api.ads.admanager.axis.v202205.ReportDownloadOptions) ReportQuery(com.google.api.ads.admanager.axis.v202205.ReportQuery) ReportServiceInterface(com.google.api.ads.admanager.axis.v202205.ReportServiceInterface) ReportJob(com.google.api.ads.admanager.axis.v202205.ReportJob) IOException(java.io.IOException) File(java.io.File) URL(java.net.URL) ApiException(com.google.api.ads.admanager.axis.v202205.ApiException) OAuthException(com.google.api.ads.common.lib.exception.OAuthException) ConfigurationLoadException(com.google.api.ads.common.lib.conf.ConfigurationLoadException) IOException(java.io.IOException) RemoteException(java.rmi.RemoteException) ValidationException(com.google.api.ads.common.lib.exception.ValidationException)

Example 17 with Location

use of com.google.api.ads.admanager.axis.v202205.Location in project googleads-java-lib by googleads.

the class CreateLineItems method runExample.

/**
 * Runs the example.
 *
 * @param adManagerServices the services factory.
 * @param session the session.
 * @param orderId the ID of the order that the line items will belong to.
 * @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(AdManagerServices adManagerServices, AdManagerSession session, long orderId) throws RemoteException {
    // Get the LineItemService.
    LineItemServiceInterface lineItemService = adManagerServices.get(session, LineItemServiceInterface.class);
    // Get the NetworkService.
    NetworkServiceInterface networkService = adManagerServices.get(session, NetworkServiceInterface.class);
    // Get the root ad unit ID used to target the whole site.
    String rootAdUnitId = networkService.getCurrentNetwork().getEffectiveRootAdUnitId();
    // Create inventory targeting.
    InventoryTargeting inventoryTargeting = new InventoryTargeting();
    // Create ad unit targeting for the root ad unit (i.e. the whole network).
    AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
    adUnitTargeting.setAdUnitId(rootAdUnitId);
    adUnitTargeting.setIncludeDescendants(true);
    inventoryTargeting.setTargetedAdUnits(new AdUnitTargeting[] { adUnitTargeting });
    // Create geographical targeting.
    GeoTargeting geoTargeting = new GeoTargeting();
    // Include the US, Quebec, Canada, and the B3P Canada postal code.
    // To determine what other geographic criteria exists,
    // run GetGeoTargets.java.
    Location countryLocation = new Location();
    countryLocation.setId(2840L);
    Location regionLocation = new Location();
    regionLocation.setId(20133L);
    Location postalCodeLocation = new Location();
    postalCodeLocation.setId(9000093L);
    geoTargeting.setTargetedLocations(new Location[] { countryLocation, regionLocation, postalCodeLocation });
    // Exclude Chicago and the New York metro area.
    // To determine what other geographic criteria exists, run
    // GetGeoTargets.java.
    Location cityLocation = new Location();
    cityLocation.setId(1016367L);
    Location metroLocation = new Location();
    metroLocation.setId(200501L);
    geoTargeting.setExcludedLocations(new Location[] { cityLocation, metroLocation });
    // Exclude domains that are not under the network's control.
    UserDomainTargeting userDomainTargeting = new UserDomainTargeting();
    userDomainTargeting.setDomains(new String[] { "usa.gov" });
    userDomainTargeting.setTargeted(false);
    // Create day-part targeting.
    DayPartTargeting dayPartTargeting = new DayPartTargeting();
    dayPartTargeting.setTimeZone(DeliveryTimeZone.BROWSER);
    // Target only the weekend in the browser's timezone.
    DayPart saturdayDayPart = new DayPart();
    saturdayDayPart.setDayOfWeek(DayOfWeek.SATURDAY);
    saturdayDayPart.setStartTime(new TimeOfDay(0, MinuteOfHour.ZERO));
    saturdayDayPart.setEndTime(new TimeOfDay(24, MinuteOfHour.ZERO));
    DayPart sundayDayPart = new DayPart();
    sundayDayPart.setDayOfWeek(DayOfWeek.SUNDAY);
    sundayDayPart.setStartTime(new TimeOfDay(0, MinuteOfHour.ZERO));
    sundayDayPart.setEndTime(new TimeOfDay(24, MinuteOfHour.ZERO));
    dayPartTargeting.setDayParts(new DayPart[] { saturdayDayPart, sundayDayPart });
    // Create technology targeting.
    TechnologyTargeting technologyTargeting = new TechnologyTargeting();
    // Create browser targeting.
    BrowserTargeting browserTargeting = new BrowserTargeting();
    browserTargeting.setIsTargeted(true);
    // Target just the Chrome browser.
    // To determine what other technology criteria exists, run
    // GetAllBrowsers.java.
    Technology browserTechnology = new Technology();
    browserTechnology.setId(500072L);
    browserTargeting.setBrowsers(new Technology[] { browserTechnology });
    technologyTargeting.setBrowserTargeting(browserTargeting);
    // Create targeting.
    Targeting targeting = new Targeting();
    targeting.setGeoTargeting(geoTargeting);
    targeting.setInventoryTargeting(inventoryTargeting);
    targeting.setUserDomainTargeting(userDomainTargeting);
    targeting.setDayPartTargeting(dayPartTargeting);
    targeting.setTechnologyTargeting(technologyTargeting);
    // Create a line item.
    LineItem lineItem = new LineItem();
    lineItem.setName("Line item #" + new Random().nextInt(Integer.MAX_VALUE));
    lineItem.setOrderId(orderId);
    lineItem.setTargeting(targeting);
    // Allow the line item to be booked even if there is not enough inventory.
    lineItem.setAllowOverbook(true);
    // Set the line item type to STANDARD and priority to Normal. In this case,
    // 6 would be High, and 10 would be Low.
    lineItem.setLineItemType(LineItemType.STANDARD);
    lineItem.setPriority(8);
    // Set the creative rotation type to even.
    lineItem.setCreativeRotationType(CreativeRotationType.EVEN);
    // Create creative placeholder size.
    Size size = new Size();
    size.setWidth(300);
    size.setHeight(250);
    size.setIsAspectRatio(false);
    // Create the creative placeholder.
    CreativePlaceholder creativePlaceholder = new CreativePlaceholder();
    creativePlaceholder.setSize(size);
    // Set the size of creatives that can be associated with this line item.
    lineItem.setCreativePlaceholders(new CreativePlaceholder[] { creativePlaceholder });
    // Set the length of the line item to run.
    lineItem.setStartDateTimeType(StartDateTimeType.IMMEDIATELY);
    lineItem.setEndDateTime(DateTimes.toDateTime(Instant.now().plus(Duration.standardDays(30L)), "America/New_York"));
    // Set the cost per unit to $2.
    lineItem.setCostType(CostType.CPM);
    lineItem.setCostPerUnit(new Money("USD", 2000000L));
    // Set the number of units bought to 500,000 so that the budget is
    // $1,000.
    Goal goal = new Goal();
    goal.setGoalType(GoalType.LIFETIME);
    goal.setUnits(500000L);
    goal.setUnitType(UnitType.IMPRESSIONS);
    lineItem.setPrimaryGoal(goal);
    // Create the line item on the server.
    LineItem[] lineItems = lineItemService.createLineItems(new LineItem[] { lineItem });
    for (LineItem createdLineItem : lineItems) {
        System.out.printf("A line item with ID %d and name '%s' was created.%n", createdLineItem.getId(), createdLineItem.getName());
    }
}
Also used : NetworkServiceInterface(com.google.api.ads.admanager.axis.v202205.NetworkServiceInterface) TimeOfDay(com.google.api.ads.admanager.axis.v202205.TimeOfDay) UserDomainTargeting(com.google.api.ads.admanager.axis.v202205.UserDomainTargeting) AdUnitTargeting(com.google.api.ads.admanager.axis.v202205.AdUnitTargeting) Targeting(com.google.api.ads.admanager.axis.v202205.Targeting) GeoTargeting(com.google.api.ads.admanager.axis.v202205.GeoTargeting) InventoryTargeting(com.google.api.ads.admanager.axis.v202205.InventoryTargeting) TechnologyTargeting(com.google.api.ads.admanager.axis.v202205.TechnologyTargeting) BrowserTargeting(com.google.api.ads.admanager.axis.v202205.BrowserTargeting) DayPartTargeting(com.google.api.ads.admanager.axis.v202205.DayPartTargeting) LineItemServiceInterface(com.google.api.ads.admanager.axis.v202205.LineItemServiceInterface) Size(com.google.api.ads.admanager.axis.v202205.Size) LineItem(com.google.api.ads.admanager.axis.v202205.LineItem) InventoryTargeting(com.google.api.ads.admanager.axis.v202205.InventoryTargeting) GeoTargeting(com.google.api.ads.admanager.axis.v202205.GeoTargeting) CreativePlaceholder(com.google.api.ads.admanager.axis.v202205.CreativePlaceholder) DayPartTargeting(com.google.api.ads.admanager.axis.v202205.DayPartTargeting) Money(com.google.api.ads.admanager.axis.v202205.Money) Goal(com.google.api.ads.admanager.axis.v202205.Goal) AdUnitTargeting(com.google.api.ads.admanager.axis.v202205.AdUnitTargeting) UserDomainTargeting(com.google.api.ads.admanager.axis.v202205.UserDomainTargeting) DayPart(com.google.api.ads.admanager.axis.v202205.DayPart) Random(java.util.Random) Technology(com.google.api.ads.admanager.axis.v202205.Technology) TechnologyTargeting(com.google.api.ads.admanager.axis.v202205.TechnologyTargeting) BrowserTargeting(com.google.api.ads.admanager.axis.v202205.BrowserTargeting) Location(com.google.api.ads.admanager.axis.v202205.Location)

Example 18 with Location

use of com.google.api.ads.admanager.axis.v202205.Location in project googleads-java-lib by googleads.

the class CreateTrafficForecastSegments method runExample.

/**
 * Runs the example.
 *
 * @param adManagerServices the services factory.
 * @param session the session.
 * @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(AdManagerServices adManagerServices, AdManagerSession session) throws RemoteException {
    // Get the adjustment service and the network service.
    AdjustmentServiceInterface adjustmentService = adManagerServices.get(session, AdjustmentServiceInterface.class);
    NetworkServiceInterface networkService = adManagerServices.get(session, NetworkServiceInterface.class);
    // Get the root ad unit ID used to target the whole site.
    String rootAdUnitId = networkService.getCurrentNetwork().getEffectiveRootAdUnitId();
    // Create inventory targeting.
    InventoryTargeting inventoryTargeting = new InventoryTargeting();
    // Create ad unit targeting for the root ad unit (i.e. the whole network).
    AdUnitTargeting adUnitTargeting = new AdUnitTargeting();
    adUnitTargeting.setAdUnitId(rootAdUnitId);
    adUnitTargeting.setIncludeDescendants(true);
    inventoryTargeting.setTargetedAdUnits(new AdUnitTargeting[] { adUnitTargeting });
    // Create targeting for United States traffic.
    GeoTargeting geoTargeting = new GeoTargeting();
    Location countryLocation = new Location();
    countryLocation.setId(2840L);
    geoTargeting.setTargetedLocations(new Location[] { countryLocation });
    Targeting targeting = new Targeting();
    targeting.setInventoryTargeting(inventoryTargeting);
    targeting.setGeoTargeting(geoTargeting);
    TrafficForecastSegment segment = new TrafficForecastSegment();
    segment.setTargeting(targeting);
    segment.setName("Forecast segment #" + new Random().nextInt(Integer.MAX_VALUE));
    // Create the traffic forecst segment on the server.
    TrafficForecastSegment[] segments = adjustmentService.createTrafficForecastSegments(new TrafficForecastSegment[] { segment });
    for (TrafficForecastSegment createdSegment : segments) {
        System.out.printf("Traffic forecast segment with ID %d and %d forecast adjustments was created.%n", createdSegment.getId(), createdSegment.getActiveForecastAdjustmentCount());
    }
}
Also used : NetworkServiceInterface(com.google.api.ads.admanager.axis.v202202.NetworkServiceInterface) TrafficForecastSegment(com.google.api.ads.admanager.axis.v202202.TrafficForecastSegment) AdUnitTargeting(com.google.api.ads.admanager.axis.v202202.AdUnitTargeting) InventoryTargeting(com.google.api.ads.admanager.axis.v202202.InventoryTargeting) Targeting(com.google.api.ads.admanager.axis.v202202.Targeting) GeoTargeting(com.google.api.ads.admanager.axis.v202202.GeoTargeting) AdUnitTargeting(com.google.api.ads.admanager.axis.v202202.AdUnitTargeting) Random(java.util.Random) AdjustmentServiceInterface(com.google.api.ads.admanager.axis.v202202.AdjustmentServiceInterface) InventoryTargeting(com.google.api.ads.admanager.axis.v202202.InventoryTargeting) GeoTargeting(com.google.api.ads.admanager.axis.v202202.GeoTargeting) Location(com.google.api.ads.admanager.axis.v202202.Location)

Example 19 with Location

use of com.google.api.ads.admanager.axis.v202205.Location in project libSBOLj by SynBioDex.

the class SequenceAnnotationTest method test_LocToString.

/*
	 * 
	 * move to Location Test class
	 */
@Test
public void test_LocToString() throws SBOLValidationException {
    Location test = promoter_SA.addGenericLocation("promoter_cut");
    assertTrue(test.toString().length() != 0);
    assertNotNull(test.toString());
    assertTrue(test.toString().contains("identity="));
    assertTrue(test.toString().contains("displayId="));
    assertTrue(!test.toString().contains("description="));
    assertTrue(!test.toString().contains("orientation="));
    assertTrue(!test.toString().contains("name="));
}
Also used : GenericLocation(org.sbolstandard.core2.GenericLocation) Location(org.sbolstandard.core2.Location) Test(org.junit.Test)

Example 20 with Location

use of com.google.api.ads.admanager.axis.v202205.Location in project libSBOLj by SynBioDex.

the class SequenceAnnotationTest method test_locationMethods.

@Test
public void test_locationMethods() throws SBOLValidationException {
    Cut promoter_cut = promoter_SA.addCut("promoter_cut", 1);
    assertTrue(gRNA_b_gene.getSequenceAnnotation("promoter_SA").getLocation("promoter_cut").equals(promoter_cut));
    promoter_cut.unsetOrientation();
    assertNull(promoter_cut.getOrientation());
    Location test = promoter_cut;
    assertNotNull(test.toString());
    Cut terminator_cut = terminator_SA.addCut("terminator_cut", 100);
    assertTrue(gRNA_b_gene.getSequenceAnnotation("terminator_SA").getLocation("terminator_cut").equals(terminator_cut));
    Cut gene_cut = gene_SA.addCut("gene_cut", 50, OrientationType.INLINE);
    assertTrue(gRNA_b_gene.getSequenceAnnotation("gene_SA").getLocation("gene_cut").equals(gene_cut));
    gene_SA.removeLocation(gene_cut);
    assertNull(gene_SA.getLocation("gene_cut"));
    Range gene_range = gene_SA.addRange("gene_range", 50, 99);
    assertTrue(gRNA_b_gene.getSequenceAnnotation("gene_SA").getLocation("gene_range").equals(gene_range));
    gene_range.unsetOrientation();
    assertNull(gene_range.getOrientation());
    promoter_SA.removeLocation(promoter_cut);
    assertNull(promoter_SA.getLocation(promoter_cut.getIdentity()));
    GenericLocation promoter_glocation = promoter_SA.addGenericLocation("promoter_glocation");
    assertTrue(gRNA_b_gene.getSequenceAnnotation("promoter_SA").getLocation("promoter_glocation").equals(promoter_glocation));
    terminator_SA.removeLocation(terminator_cut);
    assertNull(terminator_SA.getLocation("terminator_cut"));
    GenericLocation terminator_glocation = terminator_SA.addGenericLocation("terminator_glocation", OrientationType.INLINE);
    assertTrue(gRNA_b_gene.getSequenceAnnotation("terminator_SA").getLocation("terminator_glocation").equals(terminator_glocation));
}
Also used : Cut(org.sbolstandard.core2.Cut) GenericLocation(org.sbolstandard.core2.GenericLocation) Range(org.sbolstandard.core2.Range) GenericLocation(org.sbolstandard.core2.GenericLocation) Location(org.sbolstandard.core2.Location) Test(org.junit.Test)

Aggregations

StatementBuilder (com.google.api.ads.admanager.axis.utils.v202205.StatementBuilder)8 Random (java.util.Random)8 ReportDownloader (com.google.api.ads.admanager.axis.utils.v202205.ReportDownloader)7 ReportDownloadOptions (com.google.api.ads.admanager.axis.v202205.ReportDownloadOptions)7 ReportJob (com.google.api.ads.admanager.axis.v202205.ReportJob)7 ReportQuery (com.google.api.ads.admanager.axis.v202205.ReportQuery)7 ReportServiceInterface (com.google.api.ads.admanager.axis.v202205.ReportServiceInterface)7 File (java.io.File)7 URL (java.net.URL)7 Location (org.openqa.selenium.html5.Location)7 PublisherQueryLanguageServiceInterface (com.google.api.ads.admanager.axis.v202205.PublisherQueryLanguageServiceInterface)6 ResultSet (com.google.api.ads.admanager.axis.v202205.ResultSet)6 Test (org.junit.Test)5 LocationContext (org.openqa.selenium.html5.LocationContext)5 WebElement (org.openqa.selenium.WebElement)3 WebDriverWait (org.openqa.selenium.support.ui.WebDriverWait)3 AdUnitTargeting (com.google.api.ads.admanager.axis.v202108.AdUnitTargeting)2 GeoTargeting (com.google.api.ads.admanager.axis.v202108.GeoTargeting)2 InventoryTargeting (com.google.api.ads.admanager.axis.v202108.InventoryTargeting)2 Location (com.google.api.ads.admanager.axis.v202108.Location)2