com.google.api.ads.admanager.axis.v202308.ForecastBreakdownOptions Maven / Gradle / Ivy
Show all versions of dfp-axis Show documentation
// 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.
/**
* ForecastBreakdownOptions.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.v202308;
/**
* Configuration of forecast breakdown.
*/
public class ForecastBreakdownOptions implements java.io.Serializable {
/* The boundaries of time windows to configure time breakdown.
*
* By default, the time window of the forecasted {@link
* LineItem} is assumed if none are
* explicitly specified in this field. But if set, at
* least two {@link DateTime}s are needed to
* define the boundaries of minimally one time window.
*
*
Also, the time boundaries are required to be in
* the same time zone, in strictly ascending
* order. */
private com.google.api.ads.admanager.axis.v202308.DateTime[] timeWindows;
/* For each time window, these are the breakdown targets. If none
* specified, the targeting of the
* forecasted {@link LineItem} is assumed. */
private com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget[] targets;
public ForecastBreakdownOptions() {
}
public ForecastBreakdownOptions(
com.google.api.ads.admanager.axis.v202308.DateTime[] timeWindows,
com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget[] targets) {
this.timeWindows = timeWindows;
this.targets = targets;
}
@Override
public String toString() {
return com.google.common.base.MoreObjects.toStringHelper(this.getClass())
.omitNullValues()
.add("targets", getTargets())
.add("timeWindows", getTimeWindows())
.toString();
}
/**
* Gets the timeWindows value for this ForecastBreakdownOptions.
*
* @return timeWindows * The boundaries of time windows to configure time breakdown.
*
*
By default, the time window of the forecasted {@link
* LineItem} is assumed if none are
* explicitly specified in this field. But if set, at
* least two {@link DateTime}s are needed to
* define the boundaries of minimally one time window.
*
*
Also, the time boundaries are required to be in
* the same time zone, in strictly ascending
* order.
*/
public com.google.api.ads.admanager.axis.v202308.DateTime[] getTimeWindows() {
return timeWindows;
}
/**
* Sets the timeWindows value for this ForecastBreakdownOptions.
*
* @param timeWindows * The boundaries of time windows to configure time breakdown.
*
*
By default, the time window of the forecasted {@link
* LineItem} is assumed if none are
* explicitly specified in this field. But if set, at
* least two {@link DateTime}s are needed to
* define the boundaries of minimally one time window.
*
*
Also, the time boundaries are required to be in
* the same time zone, in strictly ascending
* order.
*/
public void setTimeWindows(com.google.api.ads.admanager.axis.v202308.DateTime[] timeWindows) {
this.timeWindows = timeWindows;
}
public com.google.api.ads.admanager.axis.v202308.DateTime getTimeWindows(int i) {
return this.timeWindows[i];
}
public void setTimeWindows(int i, com.google.api.ads.admanager.axis.v202308.DateTime _value) {
this.timeWindows[i] = _value;
}
/**
* Gets the targets value for this ForecastBreakdownOptions.
*
* @return targets * For each time window, these are the breakdown targets. If none
* specified, the targeting of the
* forecasted {@link LineItem} is assumed.
*/
public com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget[] getTargets() {
return targets;
}
/**
* Sets the targets value for this ForecastBreakdownOptions.
*
* @param targets * For each time window, these are the breakdown targets. If none
* specified, the targeting of the
* forecasted {@link LineItem} is assumed.
*/
public void setTargets(com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget[] targets) {
this.targets = targets;
}
public com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget getTargets(int i) {
return this.targets[i];
}
public void setTargets(int i, com.google.api.ads.admanager.axis.v202308.ForecastBreakdownTarget _value) {
this.targets[i] = _value;
}
private java.lang.Object __equalsCalc = null;
public synchronized boolean equals(java.lang.Object obj) {
if (!(obj instanceof ForecastBreakdownOptions)) return false;
ForecastBreakdownOptions other = (ForecastBreakdownOptions) obj;
if (obj == null) return false;
if (this == obj) return true;
if (__equalsCalc != null) {
return (__equalsCalc == obj);
}
__equalsCalc = obj;
boolean _equals;
_equals = true &&
((this.timeWindows==null && other.getTimeWindows()==null) ||
(this.timeWindows!=null &&
java.util.Arrays.equals(this.timeWindows, other.getTimeWindows()))) &&
((this.targets==null && other.getTargets()==null) ||
(this.targets!=null &&
java.util.Arrays.equals(this.targets, other.getTargets())));
__equalsCalc = null;
return _equals;
}
private boolean __hashCodeCalc = false;
public synchronized int hashCode() {
if (__hashCodeCalc) {
return 0;
}
__hashCodeCalc = true;
int _hashCode = 1;
if (getTimeWindows() != null) {
for (int i=0;
i