All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.api.ads.admanager.axis.v202311.ProposalLineItem Maven / Gradle / Ivy

There is a newer version: 5.6.0
Show newest version
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * ProposalLineItem.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis 1.4 Mar 02, 2009 (07:08:06 PST) WSDL2Java emitter.
 */

package com.google.api.ads.admanager.axis.v202311;


/**
 * A {@code ProposalLineItem} is added to a programmatic {@link Proposal}
 * and is similar to a
 *             delivery {@link LineItem}. It contains delivery details
 * including information like impression
 *             goal or quantity, start and end times, and targeting.
 */
public class ProposalLineItem  implements java.io.Serializable {
    /* The unique ID of the {@code ProposalLineItem}.
     *                 This attribute is read-only. */
    private java.lang.Long id;

    /* The unique ID of the {@link Proposal}, to which the {@code
     * ProposalLineItem} belongs. This
     *                 attribute is required for creation and then is readonly.
     * This attribute is required. */
    private java.lang.Long proposalId;

    /* The name of the {@code ProposalLineItem} which should be unique
     * under the same {@link
     *                 Proposal}. This attribute has a maximum length of
     * 255 characters. This attribute can be
     *                 configured as editable after the proposal has been
     * submitted. Please check with your network
     *                 administrator for editable fields configuration.
     *                 This attribute is
     * required. */
    private java.lang.String name;

    /* The date and time at which the line item associated with the
     * {@code ProposalLineItem} is
     *                 enabled to begin serving. This attribute is optional
     * during creation, but required and must be
     *                 in the future when it turns into a line item. The
     * {@link DateTime#timeZoneID} is required if
     *                 start date time is not {@code null}. This attribute
     * becomes readonly once the {@code
     *                 ProposalLineItem} has started delivering. */
    private com.google.api.ads.admanager.axis.v202311.DateTime startDateTime;

    /* The date and time at which the line item associated with the
     * {@code ProposalLineItem} stops
     *                 beening served. This attribute is optional during
     * creation, but required and must be after the
     *                 {@link #startDateTime}. The {@link DateTime#timeZoneID}
     * is required if end date time is not
     *                 {@code null}. */
    private com.google.api.ads.admanager.axis.v202311.DateTime endDateTime;

    /* The time zone ID in tz database format (e.g. "America/Los_Angeles")
     * for this {@code
     *                 ProposalLineItem}. The number of serving days is calculated
     * in this time zone. So if {@link
     *                 #rateType} is {@link RateType#CPD}, it will affect
     * the cost calculation. The {@link
     *                 #startDateTime} and {@link #endDateTime} will be returned
     * in this time zone. This attribute is
     *                 optional and defaults to the network's time zone.
     *                 This attribute is read-only. */
    private java.lang.String timeZoneId;

    /* Provides any additional notes that may annotate the {@code
     * ProposalLineItem}. This attribute is
     *                 optional and has a maximum length of 65,535 characters.
     * This attribute can be configured as
     *                 editable after the proposal has been submitted. Please
     * check with your network administrator
     *                 for editable fields configuration. */
    private java.lang.String internalNotes;

    /* The archival status of the {@code ProposalLineItem}.
     *                 This attribute is read-only. */
    private java.lang.Boolean isArchived;

    /* The goal(i.e. contracted quantity, quantity or limit) that
     * this {@code ProposalLineItem} is
     *                 associated with, which is used in its pacing and budgeting.
     * {@link Goal#units} must be greater
     *                 than 0 when the proposal line item turns into a line
     * item, {@link Goal#goalType} and {@link
     *                 Goal#unitType} are readonly. For a Preferred deal
     * {@code ProposalLineItem}, the goal type can
     *                 only be {@link GoalType#NONE}.
     *                 This attribute is
     * required. */
    private com.google.api.ads.admanager.axis.v202311.Goal goal;

    /* The secondary goals that this {@code ProposalLineItem} is associated
     * with. For a programmatic
     *                 line item with the properties {@link RateType#CPM}
     * and {@link LineItemType#SPONSORSHIP}, this
     *                 field will have one goal which describes the impressions
     * cap. For other cases, this field is an
     *                 empty list. */
    private com.google.api.ads.admanager.axis.v202311.Goal[] secondaryGoals;

    /* The contracted number of daily minimum impressions used for
     * {@link LineItemType#SPONSORSHIP}
     *                 {@code ProposalLineItem} deals with a rate type of
     * {@link RateType#CPD}.
     *                 
     *                 

This attribute is required for percentage-based-goal * {@link ProposalLineItem proposal line * items}. It does not impact ad-serving and is for reporting * purposes only. */ private java.lang.Long contractedUnitsBought; /* The strategy for delivering ads over the course of the {@code * ProposalLineItem}'s duration. * This attribute is required. For a Preferred deal {@code * ProposalLineItem}, the value can only * be {@link DeliveryRateType#FRONTLOADED}. */ private com.google.api.ads.admanager.axis.v202311.DeliveryRateType deliveryRateType; /* The strategy for serving roadblocked creatives, i.e. instances * where multiple creatives must be * served together on a single web page. This attribute * is optional during creation and defaults * to the {@link Product#roadblockingType product's roadblocking * type}, or {@link * RoadblockingType#ONE_OR_MORE} if not specified by * the product. */ private com.google.api.ads.admanager.axis.v202311.RoadblockingType roadblockingType; /* The delivery option for companions. This is only valid if the * roadblocking type is {@link * RoadblockingType#CREATIVE_SET}. The default value * for roadblocking creatives is {@link * CompanionDeliveryOption#OPTIONAL}. The default value * in other cases is {@link * CompanionDeliveryOption#UNKNOWN}. Providing something * other than {@link * CompanionDeliveryOption#UNKNOWN} will cause an error. */ private com.google.api.ads.admanager.axis.v202311.CompanionDeliveryOption companionDeliveryOption; /* The max duration of a video creative associated with this {@code * ProposalLineItem} in * milliseconds. This attribute is optional, defaults * to the {@link Product#videoMaxDuration} on * the {@link Product} it was created with, and only * meaningful if this is a video proposal line * item. */ private java.lang.Long videoMaxDuration; /* The proposal line item's creatives' skippability. This attribute * is optional, only applicable * for video proposal line items, and defaults to {@link * SkippableAdType#NOT_SKIPPABLE}. */ private com.google.api.ads.admanager.axis.v202311.SkippableAdType videoCreativeSkippableAdType; /* The set of frequency capping units for this {@code ProposalLineItem}. * This attribute is * optional during creation and defaults to the {@link * Product#frequencyCaps product's frequency * caps} if {@link Product#allowFrequencyCapsCustomization} * is {@code false}. */ private com.google.api.ads.admanager.axis.v202311.FrequencyCap[] frequencyCaps; /* The unique ID of corresponding {@link LineItem}. This will * be {@code null} if the {@link * Proposal} has not been pushed to Ad Manager. * This attribute is read-only. */ private java.lang.Long dfpLineItemId; /* The corresponding {@link LineItemType} of the {@code ProposalLineItem}. * For a programmatic * {@code ProposalLineItem}, the value can only be one * of: * *

    *
  • {@link LineItemType#SPONSORSHIP} *
  • {@link LineItemType#STANDARD} *
  • {@link LineItemType#PREFERRED_DEAL} *
* This attribute is * required. */ private com.google.api.ads.admanager.axis.v202311.LineItemType lineItemType; /* The priority for the corresponding {@link LineItem} of the * {@code ProposalLineItem}. This * attribute is optional during creation and defaults * to the default priority of the {@link * #lineItemType}. For forecasting, this attribute is * optional and has a default value assigned by * Google. See {@link LineItem#priority} for more information. */ private java.lang.Integer lineItemPriority; /* The method used for billing the {@code ProposalLineItem}. * This attribute is read-only. * This attribute is * required. */ private com.google.api.ads.admanager.axis.v202311.RateType rateType; /* Details about the creatives that are expected to serve through * the {@code ProposalLineItem}. * This attribute is optional during creation and defaults * to the {@link * Product#creativePlaceholders product's creative placeholders}. * This attribute is required. */ private com.google.api.ads.admanager.axis.v202311.CreativePlaceholder[] creativePlaceholders; /* Contains the targeting criteria for the {@code ProposalLineItem}. * This attribute is required. */ private com.google.api.ads.admanager.axis.v202311.Targeting targeting; /* The values of the custom fields associated with the {@code * ProposalLineItem}. This attribute is * optional. This attribute can be configured as editable * after the proposal has been submitted. * Please check with your network administrator for editable * fields configuration. */ private com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue[] customFieldValues; /* The set of labels applied directly to the {@code ProposalLineItem}. * This attribute is optional. */ private com.google.api.ads.admanager.axis.v202311.AppliedLabel[] appliedLabels; /* Contains the set of labels applied directly to the proposal * as well as those inherited ones. If * a label has been negated, only the negated label is * returned. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.AppliedLabel[] effectiveAppliedLabels; /* If a line item has a series of competitive exclusions on it, * it could be blocked from serving * with line items from the same advertiser. Setting * this to {@code true} will allow line items * from the same advertiser to serve regardless of the * other competitive exclusion labels being * applied. * *

This attribute is optional and defaults to false. */ private java.lang.Boolean disableSameAdvertiserCompetitiveExclusion; /* Indicates whether this {@code ProposalLineItem} has been sold. * This attribute is read-only. */ private java.lang.Boolean isSold; /* The amount of money to spend per impression or click in proposal * currency. It supports * precision of 4 decimal places in terms of the fundamental * currency unit, so the {@link * Money#getAmountInMicros} must be multiples of 100. * It doesn't include agency commission. * *

For example, if {@link Proposal#currencyCode} is * 'USD', then $123.4567 could be represented * as 123456700, but further precision is not supported. * *

The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ private com.google.api.ads.admanager.axis.v202311.Money netRate; /* The cost of the {@code ProposalLineItem} in proposal currency. * It supports precision of 2 * decimal places in terms of the fundamental currency * unit, so the {@link * Money#getAmountInMicros} must be multiples of 10000. * It doesn't include agency commission. * *

For example, if {@link Proposal#currencyCode} is * 'USD', then $123.45 could be represented as * 123450000, but further precision is not supported. * *

The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ private com.google.api.ads.admanager.axis.v202311.Money netCost; /* Indicates how well the line item generated from this proposal * line item has been performing. * This will be {@code null} if the delivery indicator * information is not available due to one of * the following reasons: * *

    *
  1. The proposal line item has not pushed to Ad Manager. *
  2. The line item is not delivering. *
  3. The line item has an unlimited goal or cap. *
  4. The line item has a percentage based goal or cap. *
* This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.DeliveryIndicator deliveryIndicator; /* Delivery data provides the number of clicks or impressions * delivered for the {@link LineItem} * generated from this proposal line item in the last * 7 days. This will be {@code null} if the * delivery data cannot be computed due to one of the * following reasons: * *
    *
  1. The proposal line item has not pushed to Ad Manager. *
  2. The line item is not deliverable. *
  3. The line item has completed delivering more than * 7 days ago. *
  4. The line item has an absolute-based goal. {@link * ProposalLineItem#deliveryIndicator} * should be used to track its progress in this case. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.DeliveryData deliveryData; /* The status of the {@link LineItem} generated from this proposal * line item. This will be {@code * null} if the proposal line item has not pushed to * Ad Manager. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.ComputedStatus computedStatus; /* The date and time this {@code ProposalLineItem} was last modified. * *

    This attribute is assigned by Google when a {@code * ProposalLineItem} is updated. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.DateTime lastModifiedDateTime; /* The reservation status of the {@link ProposalLineItem}. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.ReservationStatus reservationStatus; /* The last {@link DateTime} when the {@link ProposalLineItem} * reserved inventory. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.DateTime lastReservationDateTime; /* The environment that the {@code ProposalLineItem} is targeting. * The default value is {@link * EnvironmentType#BROWSER}. If this value is {@link * EnvironmentType#VIDEO_PLAYER}, then this * {@code ProposalLineItem} can only target {@link AdUnit * ad units} that have {@link AdUnitSize * sizes} whose {@link AdUnitSize#environmentType} is * also {@link EnvironmentType#VIDEO_PLAYER}. * *

    This field is read-only and set to {@link Product#environmentType} * of the product this * proposal line item was created from. */ private com.google.api.ads.admanager.axis.v202311.EnvironmentType environmentType; /* The set of {@link AllowedFormats} that this proposal line item * can have. If the set is empty, * this proposal line item allows all formats. */ private com.google.api.ads.admanager.axis.v202311.AllowedFormats[] allowedFormats; /* Whether or not the {@link Proposal} for this {@code ProposalLineItem} * is a programmatic deal. * This attribute is populated from {@link Proposal#isProgrammatic}. * This attribute is read-only. */ private java.lang.Boolean isProgrammatic; /* Additional terms shown to the buyer in Marketplace. */ private java.lang.String additionalTerms; /* Indicates the {@link ProgrammaticCreativeSource} of the programmatic * line item. */ private com.google.api.ads.admanager.axis.v202311.ProgrammaticCreativeSource programmaticCreativeSource; /* Contains the information for a proposal line item which has * a target GRP demographic. */ private com.google.api.ads.admanager.axis.v202311.GrpSettings grpSettings; /* The estimated minimum impressions that should be delivered * for a proposal line item. */ private java.lang.Long estimatedMinimumImpressions; /* Contains third party measurement settings for cross-sell Partners */ private com.google.api.ads.admanager.axis.v202311.ThirdPartyMeasurementSettings thirdPartyMeasurementSettings; /* Makegood info for this proposal line item. Immutable once created. * *

    Null if this proposal line item is not a makegood. */ private com.google.api.ads.admanager.axis.v202311.ProposalLineItemMakegoodInfo makegoodInfo; /* Whether this proposal line item has an associated makegood. * This attribute is read-only. */ private java.lang.Boolean hasMakegood; /* Whether a new makegood associated with this line item can be * created. * This attribute is read-only. */ private java.lang.Boolean canCreateMakegood; /* The {@link NegotiationRole} that paused the proposal line item, * i.e. {@link * NegotiationRole#seller} or {@link NegotiationRole#buyer}, * or {@code null} when the proposal is * not paused. * This attribute is read-only. */ private com.google.api.ads.admanager.axis.v202311.NegotiationRole pauseRole; /* The reason for pausing the {@link ProposalLineItem}, provided * by the {@link pauseRole}. It is * {@code null} when the {@link ProposalLineItem} is * not paused. * This attribute is read-only. */ private java.lang.String pauseReason; public ProposalLineItem() { } public ProposalLineItem( java.lang.Long id, java.lang.Long proposalId, java.lang.String name, com.google.api.ads.admanager.axis.v202311.DateTime startDateTime, com.google.api.ads.admanager.axis.v202311.DateTime endDateTime, java.lang.String timeZoneId, java.lang.String internalNotes, java.lang.Boolean isArchived, com.google.api.ads.admanager.axis.v202311.Goal goal, com.google.api.ads.admanager.axis.v202311.Goal[] secondaryGoals, java.lang.Long contractedUnitsBought, com.google.api.ads.admanager.axis.v202311.DeliveryRateType deliveryRateType, com.google.api.ads.admanager.axis.v202311.RoadblockingType roadblockingType, com.google.api.ads.admanager.axis.v202311.CompanionDeliveryOption companionDeliveryOption, java.lang.Long videoMaxDuration, com.google.api.ads.admanager.axis.v202311.SkippableAdType videoCreativeSkippableAdType, com.google.api.ads.admanager.axis.v202311.FrequencyCap[] frequencyCaps, java.lang.Long dfpLineItemId, com.google.api.ads.admanager.axis.v202311.LineItemType lineItemType, java.lang.Integer lineItemPriority, com.google.api.ads.admanager.axis.v202311.RateType rateType, com.google.api.ads.admanager.axis.v202311.CreativePlaceholder[] creativePlaceholders, com.google.api.ads.admanager.axis.v202311.Targeting targeting, com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue[] customFieldValues, com.google.api.ads.admanager.axis.v202311.AppliedLabel[] appliedLabels, com.google.api.ads.admanager.axis.v202311.AppliedLabel[] effectiveAppliedLabels, java.lang.Boolean disableSameAdvertiserCompetitiveExclusion, java.lang.Boolean isSold, com.google.api.ads.admanager.axis.v202311.Money netRate, com.google.api.ads.admanager.axis.v202311.Money netCost, com.google.api.ads.admanager.axis.v202311.DeliveryIndicator deliveryIndicator, com.google.api.ads.admanager.axis.v202311.DeliveryData deliveryData, com.google.api.ads.admanager.axis.v202311.ComputedStatus computedStatus, com.google.api.ads.admanager.axis.v202311.DateTime lastModifiedDateTime, com.google.api.ads.admanager.axis.v202311.ReservationStatus reservationStatus, com.google.api.ads.admanager.axis.v202311.DateTime lastReservationDateTime, com.google.api.ads.admanager.axis.v202311.EnvironmentType environmentType, com.google.api.ads.admanager.axis.v202311.AllowedFormats[] allowedFormats, java.lang.Boolean isProgrammatic, java.lang.String additionalTerms, com.google.api.ads.admanager.axis.v202311.ProgrammaticCreativeSource programmaticCreativeSource, com.google.api.ads.admanager.axis.v202311.GrpSettings grpSettings, java.lang.Long estimatedMinimumImpressions, com.google.api.ads.admanager.axis.v202311.ThirdPartyMeasurementSettings thirdPartyMeasurementSettings, com.google.api.ads.admanager.axis.v202311.ProposalLineItemMakegoodInfo makegoodInfo, java.lang.Boolean hasMakegood, java.lang.Boolean canCreateMakegood, com.google.api.ads.admanager.axis.v202311.NegotiationRole pauseRole, java.lang.String pauseReason) { this.id = id; this.proposalId = proposalId; this.name = name; this.startDateTime = startDateTime; this.endDateTime = endDateTime; this.timeZoneId = timeZoneId; this.internalNotes = internalNotes; this.isArchived = isArchived; this.goal = goal; this.secondaryGoals = secondaryGoals; this.contractedUnitsBought = contractedUnitsBought; this.deliveryRateType = deliveryRateType; this.roadblockingType = roadblockingType; this.companionDeliveryOption = companionDeliveryOption; this.videoMaxDuration = videoMaxDuration; this.videoCreativeSkippableAdType = videoCreativeSkippableAdType; this.frequencyCaps = frequencyCaps; this.dfpLineItemId = dfpLineItemId; this.lineItemType = lineItemType; this.lineItemPriority = lineItemPriority; this.rateType = rateType; this.creativePlaceholders = creativePlaceholders; this.targeting = targeting; this.customFieldValues = customFieldValues; this.appliedLabels = appliedLabels; this.effectiveAppliedLabels = effectiveAppliedLabels; this.disableSameAdvertiserCompetitiveExclusion = disableSameAdvertiserCompetitiveExclusion; this.isSold = isSold; this.netRate = netRate; this.netCost = netCost; this.deliveryIndicator = deliveryIndicator; this.deliveryData = deliveryData; this.computedStatus = computedStatus; this.lastModifiedDateTime = lastModifiedDateTime; this.reservationStatus = reservationStatus; this.lastReservationDateTime = lastReservationDateTime; this.environmentType = environmentType; this.allowedFormats = allowedFormats; this.isProgrammatic = isProgrammatic; this.additionalTerms = additionalTerms; this.programmaticCreativeSource = programmaticCreativeSource; this.grpSettings = grpSettings; this.estimatedMinimumImpressions = estimatedMinimumImpressions; this.thirdPartyMeasurementSettings = thirdPartyMeasurementSettings; this.makegoodInfo = makegoodInfo; this.hasMakegood = hasMakegood; this.canCreateMakegood = canCreateMakegood; this.pauseRole = pauseRole; this.pauseReason = pauseReason; } @Override public String toString() { return com.google.common.base.MoreObjects.toStringHelper(this.getClass()) .omitNullValues() .add("additionalTerms", getAdditionalTerms()) .add("allowedFormats", getAllowedFormats()) .add("appliedLabels", getAppliedLabels()) .add("canCreateMakegood", getCanCreateMakegood()) .add("companionDeliveryOption", getCompanionDeliveryOption()) .add("computedStatus", getComputedStatus()) .add("contractedUnitsBought", getContractedUnitsBought()) .add("creativePlaceholders", getCreativePlaceholders()) .add("customFieldValues", getCustomFieldValues()) .add("deliveryData", getDeliveryData()) .add("deliveryIndicator", getDeliveryIndicator()) .add("deliveryRateType", getDeliveryRateType()) .add("dfpLineItemId", getDfpLineItemId()) .add("disableSameAdvertiserCompetitiveExclusion", getDisableSameAdvertiserCompetitiveExclusion()) .add("effectiveAppliedLabels", getEffectiveAppliedLabels()) .add("endDateTime", getEndDateTime()) .add("environmentType", getEnvironmentType()) .add("estimatedMinimumImpressions", getEstimatedMinimumImpressions()) .add("frequencyCaps", getFrequencyCaps()) .add("goal", getGoal()) .add("grpSettings", getGrpSettings()) .add("hasMakegood", getHasMakegood()) .add("id", getId()) .add("internalNotes", getInternalNotes()) .add("isArchived", getIsArchived()) .add("isProgrammatic", getIsProgrammatic()) .add("isSold", getIsSold()) .add("lastModifiedDateTime", getLastModifiedDateTime()) .add("lastReservationDateTime", getLastReservationDateTime()) .add("lineItemPriority", getLineItemPriority()) .add("lineItemType", getLineItemType()) .add("makegoodInfo", getMakegoodInfo()) .add("name", getName()) .add("netCost", getNetCost()) .add("netRate", getNetRate()) .add("pauseReason", getPauseReason()) .add("pauseRole", getPauseRole()) .add("programmaticCreativeSource", getProgrammaticCreativeSource()) .add("proposalId", getProposalId()) .add("rateType", getRateType()) .add("reservationStatus", getReservationStatus()) .add("roadblockingType", getRoadblockingType()) .add("secondaryGoals", getSecondaryGoals()) .add("startDateTime", getStartDateTime()) // Exclude targeting to avoid overly verbose output .add("thirdPartyMeasurementSettings", getThirdPartyMeasurementSettings()) .add("timeZoneId", getTimeZoneId()) .add("videoCreativeSkippableAdType", getVideoCreativeSkippableAdType()) .add("videoMaxDuration", getVideoMaxDuration()) .toString(); } /** * Gets the id value for this ProposalLineItem. * * @return id * The unique ID of the {@code ProposalLineItem}. * This attribute is read-only. */ public java.lang.Long getId() { return id; } /** * Sets the id value for this ProposalLineItem. * * @param id * The unique ID of the {@code ProposalLineItem}. * This attribute is read-only. */ public void setId(java.lang.Long id) { this.id = id; } /** * Gets the proposalId value for this ProposalLineItem. * * @return proposalId * The unique ID of the {@link Proposal}, to which the {@code * ProposalLineItem} belongs. This * attribute is required for creation and then is readonly. * This attribute is required. */ public java.lang.Long getProposalId() { return proposalId; } /** * Sets the proposalId value for this ProposalLineItem. * * @param proposalId * The unique ID of the {@link Proposal}, to which the {@code * ProposalLineItem} belongs. This * attribute is required for creation and then is readonly. * This attribute is required. */ public void setProposalId(java.lang.Long proposalId) { this.proposalId = proposalId; } /** * Gets the name value for this ProposalLineItem. * * @return name * The name of the {@code ProposalLineItem} which should be unique * under the same {@link * Proposal}. This attribute has a maximum length of * 255 characters. This attribute can be * configured as editable after the proposal has been * submitted. Please check with your network * administrator for editable fields configuration. * This attribute is * required. */ public java.lang.String getName() { return name; } /** * Sets the name value for this ProposalLineItem. * * @param name * The name of the {@code ProposalLineItem} which should be unique * under the same {@link * Proposal}. This attribute has a maximum length of * 255 characters. This attribute can be * configured as editable after the proposal has been * submitted. Please check with your network * administrator for editable fields configuration. * This attribute is * required. */ public void setName(java.lang.String name) { this.name = name; } /** * Gets the startDateTime value for this ProposalLineItem. * * @return startDateTime * The date and time at which the line item associated with the * {@code ProposalLineItem} is * enabled to begin serving. This attribute is optional * during creation, but required and must be * in the future when it turns into a line item. The * {@link DateTime#timeZoneID} is required if * start date time is not {@code null}. This attribute * becomes readonly once the {@code * ProposalLineItem} has started delivering. */ public com.google.api.ads.admanager.axis.v202311.DateTime getStartDateTime() { return startDateTime; } /** * Sets the startDateTime value for this ProposalLineItem. * * @param startDateTime * The date and time at which the line item associated with the * {@code ProposalLineItem} is * enabled to begin serving. This attribute is optional * during creation, but required and must be * in the future when it turns into a line item. The * {@link DateTime#timeZoneID} is required if * start date time is not {@code null}. This attribute * becomes readonly once the {@code * ProposalLineItem} has started delivering. */ public void setStartDateTime(com.google.api.ads.admanager.axis.v202311.DateTime startDateTime) { this.startDateTime = startDateTime; } /** * Gets the endDateTime value for this ProposalLineItem. * * @return endDateTime * The date and time at which the line item associated with the * {@code ProposalLineItem} stops * beening served. This attribute is optional during * creation, but required and must be after the * {@link #startDateTime}. The {@link DateTime#timeZoneID} * is required if end date time is not * {@code null}. */ public com.google.api.ads.admanager.axis.v202311.DateTime getEndDateTime() { return endDateTime; } /** * Sets the endDateTime value for this ProposalLineItem. * * @param endDateTime * The date and time at which the line item associated with the * {@code ProposalLineItem} stops * beening served. This attribute is optional during * creation, but required and must be after the * {@link #startDateTime}. The {@link DateTime#timeZoneID} * is required if end date time is not * {@code null}. */ public void setEndDateTime(com.google.api.ads.admanager.axis.v202311.DateTime endDateTime) { this.endDateTime = endDateTime; } /** * Gets the timeZoneId value for this ProposalLineItem. * * @return timeZoneId * The time zone ID in tz database format (e.g. "America/Los_Angeles") * for this {@code * ProposalLineItem}. The number of serving days is calculated * in this time zone. So if {@link * #rateType} is {@link RateType#CPD}, it will affect * the cost calculation. The {@link * #startDateTime} and {@link #endDateTime} will be returned * in this time zone. This attribute is * optional and defaults to the network's time zone. * This attribute is read-only. */ public java.lang.String getTimeZoneId() { return timeZoneId; } /** * Sets the timeZoneId value for this ProposalLineItem. * * @param timeZoneId * The time zone ID in tz database format (e.g. "America/Los_Angeles") * for this {@code * ProposalLineItem}. The number of serving days is calculated * in this time zone. So if {@link * #rateType} is {@link RateType#CPD}, it will affect * the cost calculation. The {@link * #startDateTime} and {@link #endDateTime} will be returned * in this time zone. This attribute is * optional and defaults to the network's time zone. * This attribute is read-only. */ public void setTimeZoneId(java.lang.String timeZoneId) { this.timeZoneId = timeZoneId; } /** * Gets the internalNotes value for this ProposalLineItem. * * @return internalNotes * Provides any additional notes that may annotate the {@code * ProposalLineItem}. This attribute is * optional and has a maximum length of 65,535 characters. * This attribute can be configured as * editable after the proposal has been submitted. Please * check with your network administrator * for editable fields configuration. */ public java.lang.String getInternalNotes() { return internalNotes; } /** * Sets the internalNotes value for this ProposalLineItem. * * @param internalNotes * Provides any additional notes that may annotate the {@code * ProposalLineItem}. This attribute is * optional and has a maximum length of 65,535 characters. * This attribute can be configured as * editable after the proposal has been submitted. Please * check with your network administrator * for editable fields configuration. */ public void setInternalNotes(java.lang.String internalNotes) { this.internalNotes = internalNotes; } /** * Gets the isArchived value for this ProposalLineItem. * * @return isArchived * The archival status of the {@code ProposalLineItem}. * This attribute is read-only. */ public java.lang.Boolean getIsArchived() { return isArchived; } /** * Sets the isArchived value for this ProposalLineItem. * * @param isArchived * The archival status of the {@code ProposalLineItem}. * This attribute is read-only. */ public void setIsArchived(java.lang.Boolean isArchived) { this.isArchived = isArchived; } /** * Gets the goal value for this ProposalLineItem. * * @return goal * The goal(i.e. contracted quantity, quantity or limit) that * this {@code ProposalLineItem} is * associated with, which is used in its pacing and budgeting. * {@link Goal#units} must be greater * than 0 when the proposal line item turns into a line * item, {@link Goal#goalType} and {@link * Goal#unitType} are readonly. For a Preferred deal * {@code ProposalLineItem}, the goal type can * only be {@link GoalType#NONE}. * This attribute is * required. */ public com.google.api.ads.admanager.axis.v202311.Goal getGoal() { return goal; } /** * Sets the goal value for this ProposalLineItem. * * @param goal * The goal(i.e. contracted quantity, quantity or limit) that * this {@code ProposalLineItem} is * associated with, which is used in its pacing and budgeting. * {@link Goal#units} must be greater * than 0 when the proposal line item turns into a line * item, {@link Goal#goalType} and {@link * Goal#unitType} are readonly. For a Preferred deal * {@code ProposalLineItem}, the goal type can * only be {@link GoalType#NONE}. * This attribute is * required. */ public void setGoal(com.google.api.ads.admanager.axis.v202311.Goal goal) { this.goal = goal; } /** * Gets the secondaryGoals value for this ProposalLineItem. * * @return secondaryGoals * The secondary goals that this {@code ProposalLineItem} is associated * with. For a programmatic * line item with the properties {@link RateType#CPM} * and {@link LineItemType#SPONSORSHIP}, this * field will have one goal which describes the impressions * cap. For other cases, this field is an * empty list. */ public com.google.api.ads.admanager.axis.v202311.Goal[] getSecondaryGoals() { return secondaryGoals; } /** * Sets the secondaryGoals value for this ProposalLineItem. * * @param secondaryGoals * The secondary goals that this {@code ProposalLineItem} is associated * with. For a programmatic * line item with the properties {@link RateType#CPM} * and {@link LineItemType#SPONSORSHIP}, this * field will have one goal which describes the impressions * cap. For other cases, this field is an * empty list. */ public void setSecondaryGoals(com.google.api.ads.admanager.axis.v202311.Goal[] secondaryGoals) { this.secondaryGoals = secondaryGoals; } public com.google.api.ads.admanager.axis.v202311.Goal getSecondaryGoals(int i) { return this.secondaryGoals[i]; } public void setSecondaryGoals(int i, com.google.api.ads.admanager.axis.v202311.Goal _value) { this.secondaryGoals[i] = _value; } /** * Gets the contractedUnitsBought value for this ProposalLineItem. * * @return contractedUnitsBought * The contracted number of daily minimum impressions used for * {@link LineItemType#SPONSORSHIP} * {@code ProposalLineItem} deals with a rate type of * {@link RateType#CPD}. * *

    This attribute is required for percentage-based-goal * {@link ProposalLineItem proposal line * items}. It does not impact ad-serving and is for reporting * purposes only. */ public java.lang.Long getContractedUnitsBought() { return contractedUnitsBought; } /** * Sets the contractedUnitsBought value for this ProposalLineItem. * * @param contractedUnitsBought * The contracted number of daily minimum impressions used for * {@link LineItemType#SPONSORSHIP} * {@code ProposalLineItem} deals with a rate type of * {@link RateType#CPD}. * *

    This attribute is required for percentage-based-goal * {@link ProposalLineItem proposal line * items}. It does not impact ad-serving and is for reporting * purposes only. */ public void setContractedUnitsBought(java.lang.Long contractedUnitsBought) { this.contractedUnitsBought = contractedUnitsBought; } /** * Gets the deliveryRateType value for this ProposalLineItem. * * @return deliveryRateType * The strategy for delivering ads over the course of the {@code * ProposalLineItem}'s duration. * This attribute is required. For a Preferred deal {@code * ProposalLineItem}, the value can only * be {@link DeliveryRateType#FRONTLOADED}. */ public com.google.api.ads.admanager.axis.v202311.DeliveryRateType getDeliveryRateType() { return deliveryRateType; } /** * Sets the deliveryRateType value for this ProposalLineItem. * * @param deliveryRateType * The strategy for delivering ads over the course of the {@code * ProposalLineItem}'s duration. * This attribute is required. For a Preferred deal {@code * ProposalLineItem}, the value can only * be {@link DeliveryRateType#FRONTLOADED}. */ public void setDeliveryRateType(com.google.api.ads.admanager.axis.v202311.DeliveryRateType deliveryRateType) { this.deliveryRateType = deliveryRateType; } /** * Gets the roadblockingType value for this ProposalLineItem. * * @return roadblockingType * The strategy for serving roadblocked creatives, i.e. instances * where multiple creatives must be * served together on a single web page. This attribute * is optional during creation and defaults * to the {@link Product#roadblockingType product's roadblocking * type}, or {@link * RoadblockingType#ONE_OR_MORE} if not specified by * the product. */ public com.google.api.ads.admanager.axis.v202311.RoadblockingType getRoadblockingType() { return roadblockingType; } /** * Sets the roadblockingType value for this ProposalLineItem. * * @param roadblockingType * The strategy for serving roadblocked creatives, i.e. instances * where multiple creatives must be * served together on a single web page. This attribute * is optional during creation and defaults * to the {@link Product#roadblockingType product's roadblocking * type}, or {@link * RoadblockingType#ONE_OR_MORE} if not specified by * the product. */ public void setRoadblockingType(com.google.api.ads.admanager.axis.v202311.RoadblockingType roadblockingType) { this.roadblockingType = roadblockingType; } /** * Gets the companionDeliveryOption value for this ProposalLineItem. * * @return companionDeliveryOption * The delivery option for companions. This is only valid if the * roadblocking type is {@link * RoadblockingType#CREATIVE_SET}. The default value * for roadblocking creatives is {@link * CompanionDeliveryOption#OPTIONAL}. The default value * in other cases is {@link * CompanionDeliveryOption#UNKNOWN}. Providing something * other than {@link * CompanionDeliveryOption#UNKNOWN} will cause an error. */ public com.google.api.ads.admanager.axis.v202311.CompanionDeliveryOption getCompanionDeliveryOption() { return companionDeliveryOption; } /** * Sets the companionDeliveryOption value for this ProposalLineItem. * * @param companionDeliveryOption * The delivery option for companions. This is only valid if the * roadblocking type is {@link * RoadblockingType#CREATIVE_SET}. The default value * for roadblocking creatives is {@link * CompanionDeliveryOption#OPTIONAL}. The default value * in other cases is {@link * CompanionDeliveryOption#UNKNOWN}. Providing something * other than {@link * CompanionDeliveryOption#UNKNOWN} will cause an error. */ public void setCompanionDeliveryOption(com.google.api.ads.admanager.axis.v202311.CompanionDeliveryOption companionDeliveryOption) { this.companionDeliveryOption = companionDeliveryOption; } /** * Gets the videoMaxDuration value for this ProposalLineItem. * * @return videoMaxDuration * The max duration of a video creative associated with this {@code * ProposalLineItem} in * milliseconds. This attribute is optional, defaults * to the {@link Product#videoMaxDuration} on * the {@link Product} it was created with, and only * meaningful if this is a video proposal line * item. */ public java.lang.Long getVideoMaxDuration() { return videoMaxDuration; } /** * Sets the videoMaxDuration value for this ProposalLineItem. * * @param videoMaxDuration * The max duration of a video creative associated with this {@code * ProposalLineItem} in * milliseconds. This attribute is optional, defaults * to the {@link Product#videoMaxDuration} on * the {@link Product} it was created with, and only * meaningful if this is a video proposal line * item. */ public void setVideoMaxDuration(java.lang.Long videoMaxDuration) { this.videoMaxDuration = videoMaxDuration; } /** * Gets the videoCreativeSkippableAdType value for this ProposalLineItem. * * @return videoCreativeSkippableAdType * The proposal line item's creatives' skippability. This attribute * is optional, only applicable * for video proposal line items, and defaults to {@link * SkippableAdType#NOT_SKIPPABLE}. */ public com.google.api.ads.admanager.axis.v202311.SkippableAdType getVideoCreativeSkippableAdType() { return videoCreativeSkippableAdType; } /** * Sets the videoCreativeSkippableAdType value for this ProposalLineItem. * * @param videoCreativeSkippableAdType * The proposal line item's creatives' skippability. This attribute * is optional, only applicable * for video proposal line items, and defaults to {@link * SkippableAdType#NOT_SKIPPABLE}. */ public void setVideoCreativeSkippableAdType(com.google.api.ads.admanager.axis.v202311.SkippableAdType videoCreativeSkippableAdType) { this.videoCreativeSkippableAdType = videoCreativeSkippableAdType; } /** * Gets the frequencyCaps value for this ProposalLineItem. * * @return frequencyCaps * The set of frequency capping units for this {@code ProposalLineItem}. * This attribute is * optional during creation and defaults to the {@link * Product#frequencyCaps product's frequency * caps} if {@link Product#allowFrequencyCapsCustomization} * is {@code false}. */ public com.google.api.ads.admanager.axis.v202311.FrequencyCap[] getFrequencyCaps() { return frequencyCaps; } /** * Sets the frequencyCaps value for this ProposalLineItem. * * @param frequencyCaps * The set of frequency capping units for this {@code ProposalLineItem}. * This attribute is * optional during creation and defaults to the {@link * Product#frequencyCaps product's frequency * caps} if {@link Product#allowFrequencyCapsCustomization} * is {@code false}. */ public void setFrequencyCaps(com.google.api.ads.admanager.axis.v202311.FrequencyCap[] frequencyCaps) { this.frequencyCaps = frequencyCaps; } public com.google.api.ads.admanager.axis.v202311.FrequencyCap getFrequencyCaps(int i) { return this.frequencyCaps[i]; } public void setFrequencyCaps(int i, com.google.api.ads.admanager.axis.v202311.FrequencyCap _value) { this.frequencyCaps[i] = _value; } /** * Gets the dfpLineItemId value for this ProposalLineItem. * * @return dfpLineItemId * The unique ID of corresponding {@link LineItem}. This will * be {@code null} if the {@link * Proposal} has not been pushed to Ad Manager. * This attribute is read-only. */ public java.lang.Long getDfpLineItemId() { return dfpLineItemId; } /** * Sets the dfpLineItemId value for this ProposalLineItem. * * @param dfpLineItemId * The unique ID of corresponding {@link LineItem}. This will * be {@code null} if the {@link * Proposal} has not been pushed to Ad Manager. * This attribute is read-only. */ public void setDfpLineItemId(java.lang.Long dfpLineItemId) { this.dfpLineItemId = dfpLineItemId; } /** * Gets the lineItemType value for this ProposalLineItem. * * @return lineItemType * The corresponding {@link LineItemType} of the {@code ProposalLineItem}. * For a programmatic * {@code ProposalLineItem}, the value can only be one * of: * *

      *
    • {@link LineItemType#SPONSORSHIP} *
    • {@link LineItemType#STANDARD} *
    • {@link LineItemType#PREFERRED_DEAL} *
    * This attribute is * required. */ public com.google.api.ads.admanager.axis.v202311.LineItemType getLineItemType() { return lineItemType; } /** * Sets the lineItemType value for this ProposalLineItem. * * @param lineItemType * The corresponding {@link LineItemType} of the {@code ProposalLineItem}. * For a programmatic * {@code ProposalLineItem}, the value can only be one * of: * *
      *
    • {@link LineItemType#SPONSORSHIP} *
    • {@link LineItemType#STANDARD} *
    • {@link LineItemType#PREFERRED_DEAL} *
    * This attribute is * required. */ public void setLineItemType(com.google.api.ads.admanager.axis.v202311.LineItemType lineItemType) { this.lineItemType = lineItemType; } /** * Gets the lineItemPriority value for this ProposalLineItem. * * @return lineItemPriority * The priority for the corresponding {@link LineItem} of the * {@code ProposalLineItem}. This * attribute is optional during creation and defaults * to the default priority of the {@link * #lineItemType}. For forecasting, this attribute is * optional and has a default value assigned by * Google. See {@link LineItem#priority} for more information. */ public java.lang.Integer getLineItemPriority() { return lineItemPriority; } /** * Sets the lineItemPriority value for this ProposalLineItem. * * @param lineItemPriority * The priority for the corresponding {@link LineItem} of the * {@code ProposalLineItem}. This * attribute is optional during creation and defaults * to the default priority of the {@link * #lineItemType}. For forecasting, this attribute is * optional and has a default value assigned by * Google. See {@link LineItem#priority} for more information. */ public void setLineItemPriority(java.lang.Integer lineItemPriority) { this.lineItemPriority = lineItemPriority; } /** * Gets the rateType value for this ProposalLineItem. * * @return rateType * The method used for billing the {@code ProposalLineItem}. * This attribute is read-only. * This attribute is * required. */ public com.google.api.ads.admanager.axis.v202311.RateType getRateType() { return rateType; } /** * Sets the rateType value for this ProposalLineItem. * * @param rateType * The method used for billing the {@code ProposalLineItem}. * This attribute is read-only. * This attribute is * required. */ public void setRateType(com.google.api.ads.admanager.axis.v202311.RateType rateType) { this.rateType = rateType; } /** * Gets the creativePlaceholders value for this ProposalLineItem. * * @return creativePlaceholders * Details about the creatives that are expected to serve through * the {@code ProposalLineItem}. * This attribute is optional during creation and defaults * to the {@link * Product#creativePlaceholders product's creative placeholders}. * This attribute is required. */ public com.google.api.ads.admanager.axis.v202311.CreativePlaceholder[] getCreativePlaceholders() { return creativePlaceholders; } /** * Sets the creativePlaceholders value for this ProposalLineItem. * * @param creativePlaceholders * Details about the creatives that are expected to serve through * the {@code ProposalLineItem}. * This attribute is optional during creation and defaults * to the {@link * Product#creativePlaceholders product's creative placeholders}. * This attribute is required. */ public void setCreativePlaceholders(com.google.api.ads.admanager.axis.v202311.CreativePlaceholder[] creativePlaceholders) { this.creativePlaceholders = creativePlaceholders; } public com.google.api.ads.admanager.axis.v202311.CreativePlaceholder getCreativePlaceholders(int i) { return this.creativePlaceholders[i]; } public void setCreativePlaceholders(int i, com.google.api.ads.admanager.axis.v202311.CreativePlaceholder _value) { this.creativePlaceholders[i] = _value; } /** * Gets the targeting value for this ProposalLineItem. * * @return targeting * Contains the targeting criteria for the {@code ProposalLineItem}. * This attribute is required. */ public com.google.api.ads.admanager.axis.v202311.Targeting getTargeting() { return targeting; } /** * Sets the targeting value for this ProposalLineItem. * * @param targeting * Contains the targeting criteria for the {@code ProposalLineItem}. * This attribute is required. */ public void setTargeting(com.google.api.ads.admanager.axis.v202311.Targeting targeting) { this.targeting = targeting; } /** * Gets the customFieldValues value for this ProposalLineItem. * * @return customFieldValues * The values of the custom fields associated with the {@code * ProposalLineItem}. This attribute is * optional. This attribute can be configured as editable * after the proposal has been submitted. * Please check with your network administrator for editable * fields configuration. */ public com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue[] getCustomFieldValues() { return customFieldValues; } /** * Sets the customFieldValues value for this ProposalLineItem. * * @param customFieldValues * The values of the custom fields associated with the {@code * ProposalLineItem}. This attribute is * optional. This attribute can be configured as editable * after the proposal has been submitted. * Please check with your network administrator for editable * fields configuration. */ public void setCustomFieldValues(com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue[] customFieldValues) { this.customFieldValues = customFieldValues; } public com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue getCustomFieldValues(int i) { return this.customFieldValues[i]; } public void setCustomFieldValues(int i, com.google.api.ads.admanager.axis.v202311.BaseCustomFieldValue _value) { this.customFieldValues[i] = _value; } /** * Gets the appliedLabels value for this ProposalLineItem. * * @return appliedLabels * The set of labels applied directly to the {@code ProposalLineItem}. * This attribute is optional. */ public com.google.api.ads.admanager.axis.v202311.AppliedLabel[] getAppliedLabels() { return appliedLabels; } /** * Sets the appliedLabels value for this ProposalLineItem. * * @param appliedLabels * The set of labels applied directly to the {@code ProposalLineItem}. * This attribute is optional. */ public void setAppliedLabels(com.google.api.ads.admanager.axis.v202311.AppliedLabel[] appliedLabels) { this.appliedLabels = appliedLabels; } public com.google.api.ads.admanager.axis.v202311.AppliedLabel getAppliedLabels(int i) { return this.appliedLabels[i]; } public void setAppliedLabels(int i, com.google.api.ads.admanager.axis.v202311.AppliedLabel _value) { this.appliedLabels[i] = _value; } /** * Gets the effectiveAppliedLabels value for this ProposalLineItem. * * @return effectiveAppliedLabels * Contains the set of labels applied directly to the proposal * as well as those inherited ones. If * a label has been negated, only the negated label is * returned. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.AppliedLabel[] getEffectiveAppliedLabels() { return effectiveAppliedLabels; } /** * Sets the effectiveAppliedLabels value for this ProposalLineItem. * * @param effectiveAppliedLabels * Contains the set of labels applied directly to the proposal * as well as those inherited ones. If * a label has been negated, only the negated label is * returned. * This attribute is read-only. */ public void setEffectiveAppliedLabels(com.google.api.ads.admanager.axis.v202311.AppliedLabel[] effectiveAppliedLabels) { this.effectiveAppliedLabels = effectiveAppliedLabels; } public com.google.api.ads.admanager.axis.v202311.AppliedLabel getEffectiveAppliedLabels(int i) { return this.effectiveAppliedLabels[i]; } public void setEffectiveAppliedLabels(int i, com.google.api.ads.admanager.axis.v202311.AppliedLabel _value) { this.effectiveAppliedLabels[i] = _value; } /** * Gets the disableSameAdvertiserCompetitiveExclusion value for this ProposalLineItem. * * @return disableSameAdvertiserCompetitiveExclusion * If a line item has a series of competitive exclusions on it, * it could be blocked from serving * with line items from the same advertiser. Setting * this to {@code true} will allow line items * from the same advertiser to serve regardless of the * other competitive exclusion labels being * applied. * *

    This attribute is optional and defaults to false. */ public java.lang.Boolean getDisableSameAdvertiserCompetitiveExclusion() { return disableSameAdvertiserCompetitiveExclusion; } /** * Sets the disableSameAdvertiserCompetitiveExclusion value for this ProposalLineItem. * * @param disableSameAdvertiserCompetitiveExclusion * If a line item has a series of competitive exclusions on it, * it could be blocked from serving * with line items from the same advertiser. Setting * this to {@code true} will allow line items * from the same advertiser to serve regardless of the * other competitive exclusion labels being * applied. * *

    This attribute is optional and defaults to false. */ public void setDisableSameAdvertiserCompetitiveExclusion(java.lang.Boolean disableSameAdvertiserCompetitiveExclusion) { this.disableSameAdvertiserCompetitiveExclusion = disableSameAdvertiserCompetitiveExclusion; } /** * Gets the isSold value for this ProposalLineItem. * * @return isSold * Indicates whether this {@code ProposalLineItem} has been sold. * This attribute is read-only. */ public java.lang.Boolean getIsSold() { return isSold; } /** * Sets the isSold value for this ProposalLineItem. * * @param isSold * Indicates whether this {@code ProposalLineItem} has been sold. * This attribute is read-only. */ public void setIsSold(java.lang.Boolean isSold) { this.isSold = isSold; } /** * Gets the netRate value for this ProposalLineItem. * * @return netRate * The amount of money to spend per impression or click in proposal * currency. It supports * precision of 4 decimal places in terms of the fundamental * currency unit, so the {@link * Money#getAmountInMicros} must be multiples of 100. * It doesn't include agency commission. * *

    For example, if {@link Proposal#currencyCode} is * 'USD', then $123.4567 could be represented * as 123456700, but further precision is not supported. * *

    The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ public com.google.api.ads.admanager.axis.v202311.Money getNetRate() { return netRate; } /** * Sets the netRate value for this ProposalLineItem. * * @param netRate * The amount of money to spend per impression or click in proposal * currency. It supports * precision of 4 decimal places in terms of the fundamental * currency unit, so the {@link * Money#getAmountInMicros} must be multiples of 100. * It doesn't include agency commission. * *

    For example, if {@link Proposal#currencyCode} is * 'USD', then $123.4567 could be represented * as 123456700, but further precision is not supported. * *

    The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ public void setNetRate(com.google.api.ads.admanager.axis.v202311.Money netRate) { this.netRate = netRate; } /** * Gets the netCost value for this ProposalLineItem. * * @return netCost * The cost of the {@code ProposalLineItem} in proposal currency. * It supports precision of 2 * decimal places in terms of the fundamental currency * unit, so the {@link * Money#getAmountInMicros} must be multiples of 10000. * It doesn't include agency commission. * *

    For example, if {@link Proposal#currencyCode} is * 'USD', then $123.45 could be represented as * 123450000, but further precision is not supported. * *

    The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ public com.google.api.ads.admanager.axis.v202311.Money getNetCost() { return netCost; } /** * Sets the netCost value for this ProposalLineItem. * * @param netCost * The cost of the {@code ProposalLineItem} in proposal currency. * It supports precision of 2 * decimal places in terms of the fundamental currency * unit, so the {@link * Money#getAmountInMicros} must be multiples of 10000. * It doesn't include agency commission. * *

    For example, if {@link Proposal#currencyCode} is * 'USD', then $123.45 could be represented as * 123450000, but further precision is not supported. * *

    The field {@link ProposalLineItem#netRate} is required, * and used to calculate {@link * ProposalLineItem#netCost} if unspecified. */ public void setNetCost(com.google.api.ads.admanager.axis.v202311.Money netCost) { this.netCost = netCost; } /** * Gets the deliveryIndicator value for this ProposalLineItem. * * @return deliveryIndicator * Indicates how well the line item generated from this proposal * line item has been performing. * This will be {@code null} if the delivery indicator * information is not available due to one of * the following reasons: * *

      *
    1. The proposal line item has not pushed to Ad Manager. *
    2. The line item is not delivering. *
    3. The line item has an unlimited goal or cap. *
    4. The line item has a percentage based goal or cap. *
    * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.DeliveryIndicator getDeliveryIndicator() { return deliveryIndicator; } /** * Sets the deliveryIndicator value for this ProposalLineItem. * * @param deliveryIndicator * Indicates how well the line item generated from this proposal * line item has been performing. * This will be {@code null} if the delivery indicator * information is not available due to one of * the following reasons: * *
      *
    1. The proposal line item has not pushed to Ad Manager. *
    2. The line item is not delivering. *
    3. The line item has an unlimited goal or cap. *
    4. The line item has a percentage based goal or cap. *
    * This attribute is read-only. */ public void setDeliveryIndicator(com.google.api.ads.admanager.axis.v202311.DeliveryIndicator deliveryIndicator) { this.deliveryIndicator = deliveryIndicator; } /** * Gets the deliveryData value for this ProposalLineItem. * * @return deliveryData * Delivery data provides the number of clicks or impressions * delivered for the {@link LineItem} * generated from this proposal line item in the last * 7 days. This will be {@code null} if the * delivery data cannot be computed due to one of the * following reasons: * *
      *
    1. The proposal line item has not pushed to Ad Manager. *
    2. The line item is not deliverable. *
    3. The line item has completed delivering more than * 7 days ago. *
    4. The line item has an absolute-based goal. {@link * ProposalLineItem#deliveryIndicator} * should be used to track its progress in this case. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.DeliveryData getDeliveryData() { return deliveryData; } /** * Sets the deliveryData value for this ProposalLineItem. * * @param deliveryData * Delivery data provides the number of clicks or impressions * delivered for the {@link LineItem} * generated from this proposal line item in the last * 7 days. This will be {@code null} if the * delivery data cannot be computed due to one of the * following reasons: * *
        *
      1. The proposal line item has not pushed to Ad Manager. *
      2. The line item is not deliverable. *
      3. The line item has completed delivering more than * 7 days ago. *
      4. The line item has an absolute-based goal. {@link * ProposalLineItem#deliveryIndicator} * should be used to track its progress in this case. * This attribute is read-only. */ public void setDeliveryData(com.google.api.ads.admanager.axis.v202311.DeliveryData deliveryData) { this.deliveryData = deliveryData; } /** * Gets the computedStatus value for this ProposalLineItem. * * @return computedStatus * The status of the {@link LineItem} generated from this proposal * line item. This will be {@code * null} if the proposal line item has not pushed to * Ad Manager. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.ComputedStatus getComputedStatus() { return computedStatus; } /** * Sets the computedStatus value for this ProposalLineItem. * * @param computedStatus * The status of the {@link LineItem} generated from this proposal * line item. This will be {@code * null} if the proposal line item has not pushed to * Ad Manager. * This attribute is read-only. */ public void setComputedStatus(com.google.api.ads.admanager.axis.v202311.ComputedStatus computedStatus) { this.computedStatus = computedStatus; } /** * Gets the lastModifiedDateTime value for this ProposalLineItem. * * @return lastModifiedDateTime * The date and time this {@code ProposalLineItem} was last modified. * *

        This attribute is assigned by Google when a {@code * ProposalLineItem} is updated. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.DateTime getLastModifiedDateTime() { return lastModifiedDateTime; } /** * Sets the lastModifiedDateTime value for this ProposalLineItem. * * @param lastModifiedDateTime * The date and time this {@code ProposalLineItem} was last modified. * *

        This attribute is assigned by Google when a {@code * ProposalLineItem} is updated. * This attribute is read-only. */ public void setLastModifiedDateTime(com.google.api.ads.admanager.axis.v202311.DateTime lastModifiedDateTime) { this.lastModifiedDateTime = lastModifiedDateTime; } /** * Gets the reservationStatus value for this ProposalLineItem. * * @return reservationStatus * The reservation status of the {@link ProposalLineItem}. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.ReservationStatus getReservationStatus() { return reservationStatus; } /** * Sets the reservationStatus value for this ProposalLineItem. * * @param reservationStatus * The reservation status of the {@link ProposalLineItem}. * This attribute is read-only. */ public void setReservationStatus(com.google.api.ads.admanager.axis.v202311.ReservationStatus reservationStatus) { this.reservationStatus = reservationStatus; } /** * Gets the lastReservationDateTime value for this ProposalLineItem. * * @return lastReservationDateTime * The last {@link DateTime} when the {@link ProposalLineItem} * reserved inventory. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.DateTime getLastReservationDateTime() { return lastReservationDateTime; } /** * Sets the lastReservationDateTime value for this ProposalLineItem. * * @param lastReservationDateTime * The last {@link DateTime} when the {@link ProposalLineItem} * reserved inventory. * This attribute is read-only. */ public void setLastReservationDateTime(com.google.api.ads.admanager.axis.v202311.DateTime lastReservationDateTime) { this.lastReservationDateTime = lastReservationDateTime; } /** * Gets the environmentType value for this ProposalLineItem. * * @return environmentType * The environment that the {@code ProposalLineItem} is targeting. * The default value is {@link * EnvironmentType#BROWSER}. If this value is {@link * EnvironmentType#VIDEO_PLAYER}, then this * {@code ProposalLineItem} can only target {@link AdUnit * ad units} that have {@link AdUnitSize * sizes} whose {@link AdUnitSize#environmentType} is * also {@link EnvironmentType#VIDEO_PLAYER}. * *

        This field is read-only and set to {@link Product#environmentType} * of the product this * proposal line item was created from. */ public com.google.api.ads.admanager.axis.v202311.EnvironmentType getEnvironmentType() { return environmentType; } /** * Sets the environmentType value for this ProposalLineItem. * * @param environmentType * The environment that the {@code ProposalLineItem} is targeting. * The default value is {@link * EnvironmentType#BROWSER}. If this value is {@link * EnvironmentType#VIDEO_PLAYER}, then this * {@code ProposalLineItem} can only target {@link AdUnit * ad units} that have {@link AdUnitSize * sizes} whose {@link AdUnitSize#environmentType} is * also {@link EnvironmentType#VIDEO_PLAYER}. * *

        This field is read-only and set to {@link Product#environmentType} * of the product this * proposal line item was created from. */ public void setEnvironmentType(com.google.api.ads.admanager.axis.v202311.EnvironmentType environmentType) { this.environmentType = environmentType; } /** * Gets the allowedFormats value for this ProposalLineItem. * * @return allowedFormats * The set of {@link AllowedFormats} that this proposal line item * can have. If the set is empty, * this proposal line item allows all formats. */ public com.google.api.ads.admanager.axis.v202311.AllowedFormats[] getAllowedFormats() { return allowedFormats; } /** * Sets the allowedFormats value for this ProposalLineItem. * * @param allowedFormats * The set of {@link AllowedFormats} that this proposal line item * can have. If the set is empty, * this proposal line item allows all formats. */ public void setAllowedFormats(com.google.api.ads.admanager.axis.v202311.AllowedFormats[] allowedFormats) { this.allowedFormats = allowedFormats; } public com.google.api.ads.admanager.axis.v202311.AllowedFormats getAllowedFormats(int i) { return this.allowedFormats[i]; } public void setAllowedFormats(int i, com.google.api.ads.admanager.axis.v202311.AllowedFormats _value) { this.allowedFormats[i] = _value; } /** * Gets the isProgrammatic value for this ProposalLineItem. * * @return isProgrammatic * Whether or not the {@link Proposal} for this {@code ProposalLineItem} * is a programmatic deal. * This attribute is populated from {@link Proposal#isProgrammatic}. * This attribute is read-only. */ public java.lang.Boolean getIsProgrammatic() { return isProgrammatic; } /** * Sets the isProgrammatic value for this ProposalLineItem. * * @param isProgrammatic * Whether or not the {@link Proposal} for this {@code ProposalLineItem} * is a programmatic deal. * This attribute is populated from {@link Proposal#isProgrammatic}. * This attribute is read-only. */ public void setIsProgrammatic(java.lang.Boolean isProgrammatic) { this.isProgrammatic = isProgrammatic; } /** * Gets the additionalTerms value for this ProposalLineItem. * * @return additionalTerms * Additional terms shown to the buyer in Marketplace. */ public java.lang.String getAdditionalTerms() { return additionalTerms; } /** * Sets the additionalTerms value for this ProposalLineItem. * * @param additionalTerms * Additional terms shown to the buyer in Marketplace. */ public void setAdditionalTerms(java.lang.String additionalTerms) { this.additionalTerms = additionalTerms; } /** * Gets the programmaticCreativeSource value for this ProposalLineItem. * * @return programmaticCreativeSource * Indicates the {@link ProgrammaticCreativeSource} of the programmatic * line item. */ public com.google.api.ads.admanager.axis.v202311.ProgrammaticCreativeSource getProgrammaticCreativeSource() { return programmaticCreativeSource; } /** * Sets the programmaticCreativeSource value for this ProposalLineItem. * * @param programmaticCreativeSource * Indicates the {@link ProgrammaticCreativeSource} of the programmatic * line item. */ public void setProgrammaticCreativeSource(com.google.api.ads.admanager.axis.v202311.ProgrammaticCreativeSource programmaticCreativeSource) { this.programmaticCreativeSource = programmaticCreativeSource; } /** * Gets the grpSettings value for this ProposalLineItem. * * @return grpSettings * Contains the information for a proposal line item which has * a target GRP demographic. */ public com.google.api.ads.admanager.axis.v202311.GrpSettings getGrpSettings() { return grpSettings; } /** * Sets the grpSettings value for this ProposalLineItem. * * @param grpSettings * Contains the information for a proposal line item which has * a target GRP demographic. */ public void setGrpSettings(com.google.api.ads.admanager.axis.v202311.GrpSettings grpSettings) { this.grpSettings = grpSettings; } /** * Gets the estimatedMinimumImpressions value for this ProposalLineItem. * * @return estimatedMinimumImpressions * The estimated minimum impressions that should be delivered * for a proposal line item. */ public java.lang.Long getEstimatedMinimumImpressions() { return estimatedMinimumImpressions; } /** * Sets the estimatedMinimumImpressions value for this ProposalLineItem. * * @param estimatedMinimumImpressions * The estimated minimum impressions that should be delivered * for a proposal line item. */ public void setEstimatedMinimumImpressions(java.lang.Long estimatedMinimumImpressions) { this.estimatedMinimumImpressions = estimatedMinimumImpressions; } /** * Gets the thirdPartyMeasurementSettings value for this ProposalLineItem. * * @return thirdPartyMeasurementSettings * Contains third party measurement settings for cross-sell Partners */ public com.google.api.ads.admanager.axis.v202311.ThirdPartyMeasurementSettings getThirdPartyMeasurementSettings() { return thirdPartyMeasurementSettings; } /** * Sets the thirdPartyMeasurementSettings value for this ProposalLineItem. * * @param thirdPartyMeasurementSettings * Contains third party measurement settings for cross-sell Partners */ public void setThirdPartyMeasurementSettings(com.google.api.ads.admanager.axis.v202311.ThirdPartyMeasurementSettings thirdPartyMeasurementSettings) { this.thirdPartyMeasurementSettings = thirdPartyMeasurementSettings; } /** * Gets the makegoodInfo value for this ProposalLineItem. * * @return makegoodInfo * Makegood info for this proposal line item. Immutable once created. * *

        Null if this proposal line item is not a makegood. */ public com.google.api.ads.admanager.axis.v202311.ProposalLineItemMakegoodInfo getMakegoodInfo() { return makegoodInfo; } /** * Sets the makegoodInfo value for this ProposalLineItem. * * @param makegoodInfo * Makegood info for this proposal line item. Immutable once created. * *

        Null if this proposal line item is not a makegood. */ public void setMakegoodInfo(com.google.api.ads.admanager.axis.v202311.ProposalLineItemMakegoodInfo makegoodInfo) { this.makegoodInfo = makegoodInfo; } /** * Gets the hasMakegood value for this ProposalLineItem. * * @return hasMakegood * Whether this proposal line item has an associated makegood. * This attribute is read-only. */ public java.lang.Boolean getHasMakegood() { return hasMakegood; } /** * Sets the hasMakegood value for this ProposalLineItem. * * @param hasMakegood * Whether this proposal line item has an associated makegood. * This attribute is read-only. */ public void setHasMakegood(java.lang.Boolean hasMakegood) { this.hasMakegood = hasMakegood; } /** * Gets the canCreateMakegood value for this ProposalLineItem. * * @return canCreateMakegood * Whether a new makegood associated with this line item can be * created. * This attribute is read-only. */ public java.lang.Boolean getCanCreateMakegood() { return canCreateMakegood; } /** * Sets the canCreateMakegood value for this ProposalLineItem. * * @param canCreateMakegood * Whether a new makegood associated with this line item can be * created. * This attribute is read-only. */ public void setCanCreateMakegood(java.lang.Boolean canCreateMakegood) { this.canCreateMakegood = canCreateMakegood; } /** * Gets the pauseRole value for this ProposalLineItem. * * @return pauseRole * The {@link NegotiationRole} that paused the proposal line item, * i.e. {@link * NegotiationRole#seller} or {@link NegotiationRole#buyer}, * or {@code null} when the proposal is * not paused. * This attribute is read-only. */ public com.google.api.ads.admanager.axis.v202311.NegotiationRole getPauseRole() { return pauseRole; } /** * Sets the pauseRole value for this ProposalLineItem. * * @param pauseRole * The {@link NegotiationRole} that paused the proposal line item, * i.e. {@link * NegotiationRole#seller} or {@link NegotiationRole#buyer}, * or {@code null} when the proposal is * not paused. * This attribute is read-only. */ public void setPauseRole(com.google.api.ads.admanager.axis.v202311.NegotiationRole pauseRole) { this.pauseRole = pauseRole; } /** * Gets the pauseReason value for this ProposalLineItem. * * @return pauseReason * The reason for pausing the {@link ProposalLineItem}, provided * by the {@link pauseRole}. It is * {@code null} when the {@link ProposalLineItem} is * not paused. * This attribute is read-only. */ public java.lang.String getPauseReason() { return pauseReason; } /** * Sets the pauseReason value for this ProposalLineItem. * * @param pauseReason * The reason for pausing the {@link ProposalLineItem}, provided * by the {@link pauseRole}. It is * {@code null} when the {@link ProposalLineItem} is * not paused. * This attribute is read-only. */ public void setPauseReason(java.lang.String pauseReason) { this.pauseReason = pauseReason; } private java.lang.Object __equalsCalc = null; public synchronized boolean equals(java.lang.Object obj) { if (!(obj instanceof ProposalLineItem)) return false; ProposalLineItem other = (ProposalLineItem) obj; if (obj == null) return false; if (this == obj) return true; if (__equalsCalc != null) { return (__equalsCalc == obj); } __equalsCalc = obj; boolean _equals; _equals = true && ((this.id==null && other.getId()==null) || (this.id!=null && this.id.equals(other.getId()))) && ((this.proposalId==null && other.getProposalId()==null) || (this.proposalId!=null && this.proposalId.equals(other.getProposalId()))) && ((this.name==null && other.getName()==null) || (this.name!=null && this.name.equals(other.getName()))) && ((this.startDateTime==null && other.getStartDateTime()==null) || (this.startDateTime!=null && this.startDateTime.equals(other.getStartDateTime()))) && ((this.endDateTime==null && other.getEndDateTime()==null) || (this.endDateTime!=null && this.endDateTime.equals(other.getEndDateTime()))) && ((this.timeZoneId==null && other.getTimeZoneId()==null) || (this.timeZoneId!=null && this.timeZoneId.equals(other.getTimeZoneId()))) && ((this.internalNotes==null && other.getInternalNotes()==null) || (this.internalNotes!=null && this.internalNotes.equals(other.getInternalNotes()))) && ((this.isArchived==null && other.getIsArchived()==null) || (this.isArchived!=null && this.isArchived.equals(other.getIsArchived()))) && ((this.goal==null && other.getGoal()==null) || (this.goal!=null && this.goal.equals(other.getGoal()))) && ((this.secondaryGoals==null && other.getSecondaryGoals()==null) || (this.secondaryGoals!=null && java.util.Arrays.equals(this.secondaryGoals, other.getSecondaryGoals()))) && ((this.contractedUnitsBought==null && other.getContractedUnitsBought()==null) || (this.contractedUnitsBought!=null && this.contractedUnitsBought.equals(other.getContractedUnitsBought()))) && ((this.deliveryRateType==null && other.getDeliveryRateType()==null) || (this.deliveryRateType!=null && this.deliveryRateType.equals(other.getDeliveryRateType()))) && ((this.roadblockingType==null && other.getRoadblockingType()==null) || (this.roadblockingType!=null && this.roadblockingType.equals(other.getRoadblockingType()))) && ((this.companionDeliveryOption==null && other.getCompanionDeliveryOption()==null) || (this.companionDeliveryOption!=null && this.companionDeliveryOption.equals(other.getCompanionDeliveryOption()))) && ((this.videoMaxDuration==null && other.getVideoMaxDuration()==null) || (this.videoMaxDuration!=null && this.videoMaxDuration.equals(other.getVideoMaxDuration()))) && ((this.videoCreativeSkippableAdType==null && other.getVideoCreativeSkippableAdType()==null) || (this.videoCreativeSkippableAdType!=null && this.videoCreativeSkippableAdType.equals(other.getVideoCreativeSkippableAdType()))) && ((this.frequencyCaps==null && other.getFrequencyCaps()==null) || (this.frequencyCaps!=null && java.util.Arrays.equals(this.frequencyCaps, other.getFrequencyCaps()))) && ((this.dfpLineItemId==null && other.getDfpLineItemId()==null) || (this.dfpLineItemId!=null && this.dfpLineItemId.equals(other.getDfpLineItemId()))) && ((this.lineItemType==null && other.getLineItemType()==null) || (this.lineItemType!=null && this.lineItemType.equals(other.getLineItemType()))) && ((this.lineItemPriority==null && other.getLineItemPriority()==null) || (this.lineItemPriority!=null && this.lineItemPriority.equals(other.getLineItemPriority()))) && ((this.rateType==null && other.getRateType()==null) || (this.rateType!=null && this.rateType.equals(other.getRateType()))) && ((this.creativePlaceholders==null && other.getCreativePlaceholders()==null) || (this.creativePlaceholders!=null && java.util.Arrays.equals(this.creativePlaceholders, other.getCreativePlaceholders()))) && ((this.targeting==null && other.getTargeting()==null) || (this.targeting!=null && this.targeting.equals(other.getTargeting()))) && ((this.customFieldValues==null && other.getCustomFieldValues()==null) || (this.customFieldValues!=null && java.util.Arrays.equals(this.customFieldValues, other.getCustomFieldValues()))) && ((this.appliedLabels==null && other.getAppliedLabels()==null) || (this.appliedLabels!=null && java.util.Arrays.equals(this.appliedLabels, other.getAppliedLabels()))) && ((this.effectiveAppliedLabels==null && other.getEffectiveAppliedLabels()==null) || (this.effectiveAppliedLabels!=null && java.util.Arrays.equals(this.effectiveAppliedLabels, other.getEffectiveAppliedLabels()))) && ((this.disableSameAdvertiserCompetitiveExclusion==null && other.getDisableSameAdvertiserCompetitiveExclusion()==null) || (this.disableSameAdvertiserCompetitiveExclusion!=null && this.disableSameAdvertiserCompetitiveExclusion.equals(other.getDisableSameAdvertiserCompetitiveExclusion()))) && ((this.isSold==null && other.getIsSold()==null) || (this.isSold!=null && this.isSold.equals(other.getIsSold()))) && ((this.netRate==null && other.getNetRate()==null) || (this.netRate!=null && this.netRate.equals(other.getNetRate()))) && ((this.netCost==null && other.getNetCost()==null) || (this.netCost!=null && this.netCost.equals(other.getNetCost()))) && ((this.deliveryIndicator==null && other.getDeliveryIndicator()==null) || (this.deliveryIndicator!=null && this.deliveryIndicator.equals(other.getDeliveryIndicator()))) && ((this.deliveryData==null && other.getDeliveryData()==null) || (this.deliveryData!=null && this.deliveryData.equals(other.getDeliveryData()))) && ((this.computedStatus==null && other.getComputedStatus()==null) || (this.computedStatus!=null && this.computedStatus.equals(other.getComputedStatus()))) && ((this.lastModifiedDateTime==null && other.getLastModifiedDateTime()==null) || (this.lastModifiedDateTime!=null && this.lastModifiedDateTime.equals(other.getLastModifiedDateTime()))) && ((this.reservationStatus==null && other.getReservationStatus()==null) || (this.reservationStatus!=null && this.reservationStatus.equals(other.getReservationStatus()))) && ((this.lastReservationDateTime==null && other.getLastReservationDateTime()==null) || (this.lastReservationDateTime!=null && this.lastReservationDateTime.equals(other.getLastReservationDateTime()))) && ((this.environmentType==null && other.getEnvironmentType()==null) || (this.environmentType!=null && this.environmentType.equals(other.getEnvironmentType()))) && ((this.allowedFormats==null && other.getAllowedFormats()==null) || (this.allowedFormats!=null && java.util.Arrays.equals(this.allowedFormats, other.getAllowedFormats()))) && ((this.isProgrammatic==null && other.getIsProgrammatic()==null) || (this.isProgrammatic!=null && this.isProgrammatic.equals(other.getIsProgrammatic()))) && ((this.additionalTerms==null && other.getAdditionalTerms()==null) || (this.additionalTerms!=null && this.additionalTerms.equals(other.getAdditionalTerms()))) && ((this.programmaticCreativeSource==null && other.getProgrammaticCreativeSource()==null) || (this.programmaticCreativeSource!=null && this.programmaticCreativeSource.equals(other.getProgrammaticCreativeSource()))) && ((this.grpSettings==null && other.getGrpSettings()==null) || (this.grpSettings!=null && this.grpSettings.equals(other.getGrpSettings()))) && ((this.estimatedMinimumImpressions==null && other.getEstimatedMinimumImpressions()==null) || (this.estimatedMinimumImpressions!=null && this.estimatedMinimumImpressions.equals(other.getEstimatedMinimumImpressions()))) && ((this.thirdPartyMeasurementSettings==null && other.getThirdPartyMeasurementSettings()==null) || (this.thirdPartyMeasurementSettings!=null && this.thirdPartyMeasurementSettings.equals(other.getThirdPartyMeasurementSettings()))) && ((this.makegoodInfo==null && other.getMakegoodInfo()==null) || (this.makegoodInfo!=null && this.makegoodInfo.equals(other.getMakegoodInfo()))) && ((this.hasMakegood==null && other.getHasMakegood()==null) || (this.hasMakegood!=null && this.hasMakegood.equals(other.getHasMakegood()))) && ((this.canCreateMakegood==null && other.getCanCreateMakegood()==null) || (this.canCreateMakegood!=null && this.canCreateMakegood.equals(other.getCanCreateMakegood()))) && ((this.pauseRole==null && other.getPauseRole()==null) || (this.pauseRole!=null && this.pauseRole.equals(other.getPauseRole()))) && ((this.pauseReason==null && other.getPauseReason()==null) || (this.pauseReason!=null && this.pauseReason.equals(other.getPauseReason()))); __equalsCalc = null; return _equals; } private boolean __hashCodeCalc = false; public synchronized int hashCode() { if (__hashCodeCalc) { return 0; } __hashCodeCalc = true; int _hashCode = 1; if (getId() != null) { _hashCode += getId().hashCode(); } if (getProposalId() != null) { _hashCode += getProposalId().hashCode(); } if (getName() != null) { _hashCode += getName().hashCode(); } if (getStartDateTime() != null) { _hashCode += getStartDateTime().hashCode(); } if (getEndDateTime() != null) { _hashCode += getEndDateTime().hashCode(); } if (getTimeZoneId() != null) { _hashCode += getTimeZoneId().hashCode(); } if (getInternalNotes() != null) { _hashCode += getInternalNotes().hashCode(); } if (getIsArchived() != null) { _hashCode += getIsArchived().hashCode(); } if (getGoal() != null) { _hashCode += getGoal().hashCode(); } if (getSecondaryGoals() != null) { for (int i=0; i





© 2015 - 2024 Weber Informatics LLC | Privacy Policy