// Copyright 2016 Google Inc. All Rights Reserved. // // 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. package com.google.api.ads.dfp.jaxws.v201608; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlType; /** * * A {@code ProductPackage} represents a group of products which will be sold together. * * * <p>Java class for ProductPackage complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType name="ProductPackage"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="id" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/> * <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="notes" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="status" type="{https://www.google.com/apis/ads/publisher/v201608}ProductPackageStatus" minOccurs="0"/> * <element name="isArchived" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/> * <element name="rateCardIds" type="{http://www.w3.org/2001/XMLSchema}long" maxOccurs="unbounded" minOccurs="0"/> * <element name="customFieldValues" type="{https://www.google.com/apis/ads/publisher/v201608}BaseCustomFieldValue" maxOccurs="unbounded" minOccurs="0"/> * <element name="lastModifiedDateTime" type="{https://www.google.com/apis/ads/publisher/v201608}DateTime" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ProductPackage", propOrder = { "id", "name", "notes", "status", "isArchived", "rateCardIds", "customFieldValues", "lastModifiedDateTime" }) public class ProductPackage { protected Long id; protected String name; protected String notes; @XmlSchemaType(name = "string") protected ProductPackageStatus status; protected Boolean isArchived; @XmlElement(type = Long.class) protected List<Long> rateCardIds; protected List<BaseCustomFieldValue> customFieldValues; protected DateTime lastModifiedDateTime; /** * Gets the value of the id property. * * @return * possible object is * {@link Long } * */ public Long getId() { return id; } /** * Sets the value of the id property. * * @param value * allowed object is * {@link Long } * */ public void setId(Long value) { this.id = value; } /** * Gets the value of the name property. * * @return * possible object is * {@link String } * */ public String getName() { return name; } /** * Sets the value of the name property. * * @param value * allowed object is * {@link String } * */ public void setName(String value) { this.name = value; } /** * Gets the value of the notes property. * * @return * possible object is * {@link String } * */ public String getNotes() { return notes; } /** * Sets the value of the notes property. * * @param value * allowed object is * {@link String } * */ public void setNotes(String value) { this.notes = value; } /** * Gets the value of the status property. * * @return * possible object is * {@link ProductPackageStatus } * */ public ProductPackageStatus getStatus() { return status; } /** * Sets the value of the status property. * * @param value * allowed object is * {@link ProductPackageStatus } * */ public void setStatus(ProductPackageStatus value) { this.status = value; } /** * Gets the value of the isArchived property. * * @return * possible object is * {@link Boolean } * */ public Boolean isIsArchived() { return isArchived; } /** * Sets the value of the isArchived property. * * @param value * allowed object is * {@link Boolean } * */ public void setIsArchived(Boolean value) { this.isArchived = value; } /** * Gets the value of the rateCardIds property. * * <p> * This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the JAXB object. * This is why there is not a <CODE>set</CODE> method for the rateCardIds property. * * <p> * For example, to add a new item, do as follows: * <pre> * getRateCardIds().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list * {@link Long } * * */ public List<Long> getRateCardIds() { if (rateCardIds == null) { rateCardIds = new ArrayList<Long>(); } return this.rateCardIds; } /** * Gets the value of the customFieldValues property. * * <p> * This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the JAXB object. * This is why there is not a <CODE>set</CODE> method for the customFieldValues property. * * <p> * For example, to add a new item, do as follows: * <pre> * getCustomFieldValues().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list * {@link BaseCustomFieldValue } * * */ public List<BaseCustomFieldValue> getCustomFieldValues() { if (customFieldValues == null) { customFieldValues = new ArrayList<BaseCustomFieldValue>(); } return this.customFieldValues; } /** * Gets the value of the lastModifiedDateTime property. * * @return * possible object is * {@link DateTime } * */ public DateTime getLastModifiedDateTime() { return lastModifiedDateTime; } /** * Sets the value of the lastModifiedDateTime property. * * @param value * allowed object is * {@link DateTime } * */ public void setLastModifiedDateTime(DateTime value) { this.lastModifiedDateTime = value; } }