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

com.adgear.avro.openrtb.App Maven / Gradle / Ivy

Go to download

Test module for other Anoa modules, which exposes complex records (OpenRTB bid requests) through utility classes for use in unit tests within other Anoa modules (anoa-core, for instance).

The newest version!
/**
 * Autogenerated by Avro
 * 
 * DO NOT EDIT DIRECTLY
 */
package com.adgear.avro.openrtb;  


/** 3.3.6 App Object
An “app” object should be included if the ad supported content is part of a mobile application (as opposed to a mobile website). A bid request must not contain both an “app” object and a “site” object.
The app object itself and all of its parameters are optional, so default values are not provided. If an optional parameter is not specified, it should be considered unknown. At a minimum, it’s useful to provide an App ID or bundle, but this is not strictly required.

requires:
 com.adgear.avro.openrtb.Publisher
 com.adgear.avro.openrtb.Content */
@SuppressWarnings("all")
@org.apache.avro.specific.AvroGenerated
public class App extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
  public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"App\",\"namespace\":\"com.adgear.avro.openrtb\",\"doc\":\"3.3.6 App Object\\nAn “app” object should be included if the ad supported content is part of a mobile application (as opposed to a mobile website). A bid request must not contain both an “app” object and a “site” object.\\nThe app object itself and all of its parameters are optional, so default values are not provided. If an optional parameter is not specified, it should be considered unknown. At a minimum, it’s useful to provide an App ID or bundle, but this is not strictly required.\\n\\nrequires:\\n com.adgear.avro.openrtb.Publisher\\n com.adgear.avro.openrtb.Content\",\"fields\":[{\"name\":\"id\",\"type\":[\"null\",\"string\"],\"doc\":\"[01] Application ID on the exchange.\",\"default\":null},{\"name\":\"name\",\"type\":[\"null\",\"string\"],\"doc\":\"[02] Application name (may be masked at publisher’s request).\",\"default\":null},{\"name\":\"domain\",\"type\":[\"null\",\"string\"],\"doc\":\"[03] Domain of the application (e.g., “mygame.foo.com”).\",\"default\":null},{\"name\":\"cat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[04] Array of IAB content categories for the overall application. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"sectioncat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[05] Array of IAB content categories for the current subsection of the app. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"pagecat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[06] Array of IAB content categories for the current page/view of the app. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"ver\",\"type\":[\"null\",\"string\"],\"doc\":\"[07] Application version.\",\"default\":null},{\"name\":\"bundle\",\"type\":[\"null\",\"string\"],\"doc\":\"[08] Application bundle or package name (e.g., com.foo.mygame). This is intended to be a unique ID across multiple exchanges.\",\"default\":null},{\"name\":\"privacypolicy\",\"type\":[\"null\",\"int\"],\"doc\":\"[09] Specifies whether the app has a privacy policy. “1” means there is a policy and “0” means there is not.\",\"default\":null},{\"name\":\"paid\",\"type\":[\"null\",\"int\"],\"doc\":\"[10] “1” if the application is a paid version; else “0” (i.e., free).\",\"default\":null},{\"name\":\"publisher\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"Publisher\",\"doc\":\"3.3.8 Publisher Object\\nThe publisher object itself and all of its parameters are optional, so default values are not provided. If an optional parameter is not specified, it should be considered unknown.\",\"fields\":[{\"name\":\"id\",\"type\":[\"null\",\"string\"],\"doc\":\"[1] Publisher ID on the exchange.\",\"default\":null},{\"name\":\"name\",\"type\":[\"null\",\"string\"],\"doc\":\"[2] Publisher name (may be masked at publisher’s request).\",\"default\":null},{\"name\":\"cat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[3] Array of IAB content categories for the publisher. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"domain\",\"type\":[\"null\",\"string\"],\"doc\":\"[4] Publisher’s highest level domain name, for example “foopub.com”.\",\"default\":null}]}],\"doc\":\"[11] See Publisher Object.\",\"default\":null},{\"name\":\"content\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"Content\",\"doc\":\"3.3.7 Content Object\\nThe content object itself and all of its parameters are optional, so default values are not provided. If an optional parameter is not specified, it should be considered unknown. This object describes the content in which the impression will appear (may be syndicated or non- syndicated content).\\nThis object may be useful in the situation where syndicated content contains impressions and does not necessarily match the publisher’s general content. The exchange might or might not have knowledge of the page where the content is running, as a result of the syndication method. (For example, video impressions embedded in an iframe on an unknown web property or device.)\\n\\nrequires:\\n com.adgear.avro.openrtb.Producer\",\"fields\":[{\"name\":\"id\",\"type\":[\"null\",\"string\"],\"doc\":\"[01] ID uniquely identifying the content.\",\"default\":null},{\"name\":\"episode\",\"type\":[\"null\",\"int\"],\"doc\":\"[02] Content episode number (typically applies to video content).\",\"default\":null},{\"name\":\"title\",\"type\":[\"null\",\"string\"],\"doc\":\"[03] Content title.\\n           Video examples: “Search Committee” (television) or “A New Hope” (movie) or “Endgame” (made for web)\\n           Non-video example: “Why an Antarctic Glacier Is Melting So Quickly” (Time magazine article)\",\"default\":null},{\"name\":\"series\",\"type\":[\"null\",\"string\"],\"doc\":\"[04] Content series.\\n           Video examples: “The Office” (television) or “Star Wars” (movie) or “Arby ‘N’ The Chief” (made for web)\\n           Non-video example: “Ecocentric” (Time magazine blog)\",\"default\":null},{\"name\":\"season\",\"type\":[\"null\",\"string\"],\"doc\":\"[05] Content season. E.g., “Season 3” (typically applies to video content).\",\"default\":null},{\"name\":\"url\",\"type\":[\"null\",\"string\"],\"doc\":\"[06] Original URL of the content, for buy-side contextualization or review.\",\"default\":null},{\"name\":\"cat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[07] Array of IAB content categories for the content. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"videoquality\",\"type\":[\"null\",\"int\"],\"doc\":\"[08] Video quality per the IAB’s classification. See Table 6.14 Video Quality.\",\"default\":null},{\"name\":\"keywords\",\"type\":[\"null\",\"string\"],\"doc\":\"[09] Comma separated list of keywords describing the content.\",\"default\":null},{\"name\":\"contentrating\",\"type\":[\"null\",\"string\"],\"doc\":\"[10] Content rating (e.g., MPAA)\",\"default\":null},{\"name\":\"userrating\",\"type\":[\"null\",\"string\"],\"doc\":\"[11] User rating of the content (e.g., number of stars, likes, etc.).\",\"default\":null},{\"name\":\"context\",\"type\":[\"null\",\"string\"],\"doc\":\"[12] Specifies the type of content (game, video, text, etc.). See Table 6.13 Content Context.\",\"default\":null},{\"name\":\"livestream\",\"type\":[\"null\",\"int\"],\"doc\":\"[13] Is content live? E.g., live video stream, live blog. “1” means content is live. “0” means it is not live.\",\"default\":null},{\"name\":\"sourcerelationship\",\"type\":[\"null\",\"int\"],\"doc\":\"[14] 1 for “direct”; 0 for “indirect”.\",\"default\":null},{\"name\":\"producer\",\"type\":[\"null\",{\"type\":\"record\",\"name\":\"Producer\",\"doc\":\"3.3.9 Producer Object\\nThe producer is useful when content where the ad is shown is syndicated, and may appear on a completely different publisher. The producer object itself and all of its parameters are optional, so default values are not provided. If an optional parameter is not specified, it should be considered unknown. This object is optional, but useful if the content producer is different from the site publisher.\",\"fields\":[{\"name\":\"id\",\"type\":[\"null\",\"string\"],\"doc\":\"[1] Content producer or originator ID. Useful if content is syndicated, and may be posted on a site using embed tags.\",\"default\":null},{\"name\":\"name\",\"type\":[\"null\",\"string\"],\"doc\":\"[2] Content producer or originator name (e.g., “Warner Bros”).\",\"default\":null},{\"name\":\"cat\",\"type\":[\"null\",{\"type\":\"array\",\"items\":\"string\"}],\"doc\":\"[3] Array of IAB content categories for the content producer. See Table 6.1 Content Categories.\",\"default\":null},{\"name\":\"domain\",\"type\":[\"null\",\"string\"],\"doc\":\"[4] URL of the content producer.\",\"default\":null}]}],\"doc\":\"[15] See Producer Object.\",\"default\":null},{\"name\":\"len\",\"type\":[\"null\",\"int\"],\"doc\":\"[16] Length of content (appropriate for video or audio) in seconds.\",\"default\":null},{\"name\":\"qagmediarating\",\"type\":[\"null\",\"int\"],\"doc\":\"[17] Media rating of the content, per QAG guidelines. See Table 0 QAG Media Ratings for list of possible values.\",\"default\":null},{\"name\":\"embeddable\",\"type\":[\"null\",\"int\"],\"doc\":\"[18] From QAG Video Addendum. If content can be embedded (such as an embeddable video player) this value should be set to “1”. If content cannot be embedded, then this should be set to “0”.\",\"default\":null},{\"name\":\"language\",\"type\":[\"null\",\"string\"],\"doc\":\"[19] Language of the content. Use alpha-2/ISO 639-1 codes.\",\"default\":null}]}],\"doc\":\"[12] See Content Object.\",\"default\":null},{\"name\":\"keywords\",\"type\":[\"null\",\"string\"],\"doc\":\"[13] List of keywords describing this app in a comma separated string.\",\"default\":null},{\"name\":\"storeurl\",\"type\":[\"null\",\"string\"],\"doc\":\"[14] For QAG 1.5 compliance, an app store URL for an installed app should be passed in the bid request.\",\"default\":null}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** [01] Application ID on the exchange. */
  @Deprecated public java.lang.CharSequence id;
  /** [02] Application name (may be masked at publisher’s request). */
  @Deprecated public java.lang.CharSequence name;
  /** [03] Domain of the application (e.g., “mygame.foo.com”). */
  @Deprecated public java.lang.CharSequence domain;
  /** [04] Array of IAB content categories for the overall application. See Table 6.1 Content Categories. */
  @Deprecated public java.util.List cat;
  /** [05] Array of IAB content categories for the current subsection of the app. See Table 6.1 Content Categories. */
  @Deprecated public java.util.List sectioncat;
  /** [06] Array of IAB content categories for the current page/view of the app. See Table 6.1 Content Categories. */
  @Deprecated public java.util.List pagecat;
  /** [07] Application version. */
  @Deprecated public java.lang.CharSequence ver;
  /** [08] Application bundle or package name (e.g., com.foo.mygame). This is intended to be a unique ID across multiple exchanges. */
  @Deprecated public java.lang.CharSequence bundle;
  /** [09] Specifies whether the app has a privacy policy. “1” means there is a policy and “0” means there is not. */
  @Deprecated public java.lang.Integer privacypolicy;
  /** [10] “1” if the application is a paid version; else “0” (i.e., free). */
  @Deprecated public java.lang.Integer paid;
  /** [11] See Publisher Object. */
  @Deprecated public com.adgear.avro.openrtb.Publisher publisher;
  /** [12] See Content Object. */
  @Deprecated public com.adgear.avro.openrtb.Content content;
  /** [13] List of keywords describing this app in a comma separated string. */
  @Deprecated public java.lang.CharSequence keywords;
  /** [14] For QAG 1.5 compliance, an app store URL for an installed app should be passed in the bid request. */
  @Deprecated public java.lang.CharSequence storeurl;

  /**
   * Default constructor.
   */
  public App() {}

  /**
   * All-args constructor.
   */
  public App(java.lang.CharSequence id, java.lang.CharSequence name, java.lang.CharSequence domain, java.util.List cat, java.util.List sectioncat, java.util.List pagecat, java.lang.CharSequence ver, java.lang.CharSequence bundle, java.lang.Integer privacypolicy, java.lang.Integer paid, com.adgear.avro.openrtb.Publisher publisher, com.adgear.avro.openrtb.Content content, java.lang.CharSequence keywords, java.lang.CharSequence storeurl) {
    this.id = id;
    this.name = name;
    this.domain = domain;
    this.cat = cat;
    this.sectioncat = sectioncat;
    this.pagecat = pagecat;
    this.ver = ver;
    this.bundle = bundle;
    this.privacypolicy = privacypolicy;
    this.paid = paid;
    this.publisher = publisher;
    this.content = content;
    this.keywords = keywords;
    this.storeurl = storeurl;
  }

  public org.apache.avro.Schema getSchema() { return SCHEMA$; }
  // Used by DatumWriter.  Applications should not call. 
  public java.lang.Object get(int field$) {
    switch (field$) {
    case 0: return id;
    case 1: return name;
    case 2: return domain;
    case 3: return cat;
    case 4: return sectioncat;
    case 5: return pagecat;
    case 6: return ver;
    case 7: return bundle;
    case 8: return privacypolicy;
    case 9: return paid;
    case 10: return publisher;
    case 11: return content;
    case 12: return keywords;
    case 13: return storeurl;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }
  // Used by DatumReader.  Applications should not call. 
  @SuppressWarnings(value="unchecked")
  public void put(int field$, java.lang.Object value$) {
    switch (field$) {
    case 0: id = (java.lang.CharSequence)value$; break;
    case 1: name = (java.lang.CharSequence)value$; break;
    case 2: domain = (java.lang.CharSequence)value$; break;
    case 3: cat = (java.util.List)value$; break;
    case 4: sectioncat = (java.util.List)value$; break;
    case 5: pagecat = (java.util.List)value$; break;
    case 6: ver = (java.lang.CharSequence)value$; break;
    case 7: bundle = (java.lang.CharSequence)value$; break;
    case 8: privacypolicy = (java.lang.Integer)value$; break;
    case 9: paid = (java.lang.Integer)value$; break;
    case 10: publisher = (com.adgear.avro.openrtb.Publisher)value$; break;
    case 11: content = (com.adgear.avro.openrtb.Content)value$; break;
    case 12: keywords = (java.lang.CharSequence)value$; break;
    case 13: storeurl = (java.lang.CharSequence)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'id' field.
   * [01] Application ID on the exchange.
   */
  public java.lang.CharSequence getId() {
    return id;
  }

  /**
   * Sets the value of the 'id' field.
   * [01] Application ID on the exchange.
   * @param value the value to set.
   */
  public void setId(java.lang.CharSequence value) {
    this.id = value;
  }

  /**
   * Gets the value of the 'name' field.
   * [02] Application name (may be masked at publisher’s request).
   */
  public java.lang.CharSequence getName() {
    return name;
  }

  /**
   * Sets the value of the 'name' field.
   * [02] Application name (may be masked at publisher’s request).
   * @param value the value to set.
   */
  public void setName(java.lang.CharSequence value) {
    this.name = value;
  }

  /**
   * Gets the value of the 'domain' field.
   * [03] Domain of the application (e.g., “mygame.foo.com”).
   */
  public java.lang.CharSequence getDomain() {
    return domain;
  }

  /**
   * Sets the value of the 'domain' field.
   * [03] Domain of the application (e.g., “mygame.foo.com”).
   * @param value the value to set.
   */
  public void setDomain(java.lang.CharSequence value) {
    this.domain = value;
  }

  /**
   * Gets the value of the 'cat' field.
   * [04] Array of IAB content categories for the overall application. See Table 6.1 Content Categories.
   */
  public java.util.List getCat() {
    return cat;
  }

  /**
   * Sets the value of the 'cat' field.
   * [04] Array of IAB content categories for the overall application. See Table 6.1 Content Categories.
   * @param value the value to set.
   */
  public void setCat(java.util.List value) {
    this.cat = value;
  }

  /**
   * Gets the value of the 'sectioncat' field.
   * [05] Array of IAB content categories for the current subsection of the app. See Table 6.1 Content Categories.
   */
  public java.util.List getSectioncat() {
    return sectioncat;
  }

  /**
   * Sets the value of the 'sectioncat' field.
   * [05] Array of IAB content categories for the current subsection of the app. See Table 6.1 Content Categories.
   * @param value the value to set.
   */
  public void setSectioncat(java.util.List value) {
    this.sectioncat = value;
  }

  /**
   * Gets the value of the 'pagecat' field.
   * [06] Array of IAB content categories for the current page/view of the app. See Table 6.1 Content Categories.
   */
  public java.util.List getPagecat() {
    return pagecat;
  }

  /**
   * Sets the value of the 'pagecat' field.
   * [06] Array of IAB content categories for the current page/view of the app. See Table 6.1 Content Categories.
   * @param value the value to set.
   */
  public void setPagecat(java.util.List value) {
    this.pagecat = value;
  }

  /**
   * Gets the value of the 'ver' field.
   * [07] Application version.
   */
  public java.lang.CharSequence getVer() {
    return ver;
  }

  /**
   * Sets the value of the 'ver' field.
   * [07] Application version.
   * @param value the value to set.
   */
  public void setVer(java.lang.CharSequence value) {
    this.ver = value;
  }

  /**
   * Gets the value of the 'bundle' field.
   * [08] Application bundle or package name (e.g., com.foo.mygame). This is intended to be a unique ID across multiple exchanges.
   */
  public java.lang.CharSequence getBundle() {
    return bundle;
  }

  /**
   * Sets the value of the 'bundle' field.
   * [08] Application bundle or package name (e.g., com.foo.mygame). This is intended to be a unique ID across multiple exchanges.
   * @param value the value to set.
   */
  public void setBundle(java.lang.CharSequence value) {
    this.bundle = value;
  }

  /**
   * Gets the value of the 'privacypolicy' field.
   * [09] Specifies whether the app has a privacy policy. “1” means there is a policy and “0” means there is not.
   */
  public java.lang.Integer getPrivacypolicy() {
    return privacypolicy;
  }

  /**
   * Sets the value of the 'privacypolicy' field.
   * [09] Specifies whether the app has a privacy policy. “1” means there is a policy and “0” means there is not.
   * @param value the value to set.
   */
  public void setPrivacypolicy(java.lang.Integer value) {
    this.privacypolicy = value;
  }

  /**
   * Gets the value of the 'paid' field.
   * [10] “1” if the application is a paid version; else “0” (i.e., free).
   */
  public java.lang.Integer getPaid() {
    return paid;
  }

  /**
   * Sets the value of the 'paid' field.
   * [10] “1” if the application is a paid version; else “0” (i.e., free).
   * @param value the value to set.
   */
  public void setPaid(java.lang.Integer value) {
    this.paid = value;
  }

  /**
   * Gets the value of the 'publisher' field.
   * [11] See Publisher Object.
   */
  public com.adgear.avro.openrtb.Publisher getPublisher() {
    return publisher;
  }

  /**
   * Sets the value of the 'publisher' field.
   * [11] See Publisher Object.
   * @param value the value to set.
   */
  public void setPublisher(com.adgear.avro.openrtb.Publisher value) {
    this.publisher = value;
  }

  /**
   * Gets the value of the 'content' field.
   * [12] See Content Object.
   */
  public com.adgear.avro.openrtb.Content getContent() {
    return content;
  }

  /**
   * Sets the value of the 'content' field.
   * [12] See Content Object.
   * @param value the value to set.
   */
  public void setContent(com.adgear.avro.openrtb.Content value) {
    this.content = value;
  }

  /**
   * Gets the value of the 'keywords' field.
   * [13] List of keywords describing this app in a comma separated string.
   */
  public java.lang.CharSequence getKeywords() {
    return keywords;
  }

  /**
   * Sets the value of the 'keywords' field.
   * [13] List of keywords describing this app in a comma separated string.
   * @param value the value to set.
   */
  public void setKeywords(java.lang.CharSequence value) {
    this.keywords = value;
  }

  /**
   * Gets the value of the 'storeurl' field.
   * [14] For QAG 1.5 compliance, an app store URL for an installed app should be passed in the bid request.
   */
  public java.lang.CharSequence getStoreurl() {
    return storeurl;
  }

  /**
   * Sets the value of the 'storeurl' field.
   * [14] For QAG 1.5 compliance, an app store URL for an installed app should be passed in the bid request.
   * @param value the value to set.
   */
  public void setStoreurl(java.lang.CharSequence value) {
    this.storeurl = value;
  }

  /** Creates a new App RecordBuilder */
  public static com.adgear.avro.openrtb.App.Builder newBuilder() {
    return new com.adgear.avro.openrtb.App.Builder();
  }
  
  /** Creates a new App RecordBuilder by copying an existing Builder */
  public static com.adgear.avro.openrtb.App.Builder newBuilder(com.adgear.avro.openrtb.App.Builder other) {
    return new com.adgear.avro.openrtb.App.Builder(other);
  }
  
  /** Creates a new App RecordBuilder by copying an existing App instance */
  public static com.adgear.avro.openrtb.App.Builder newBuilder(com.adgear.avro.openrtb.App other) {
    return new com.adgear.avro.openrtb.App.Builder(other);
  }

  /**
   * RecordBuilder for App instances.
   */
  public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
    implements org.apache.avro.data.RecordBuilder {

    private java.lang.CharSequence id;
    private java.lang.CharSequence name;
    private java.lang.CharSequence domain;
    private java.util.List cat;
    private java.util.List sectioncat;
    private java.util.List pagecat;
    private java.lang.CharSequence ver;
    private java.lang.CharSequence bundle;
    private java.lang.Integer privacypolicy;
    private java.lang.Integer paid;
    private com.adgear.avro.openrtb.Publisher publisher;
    private com.adgear.avro.openrtb.Content content;
    private java.lang.CharSequence keywords;
    private java.lang.CharSequence storeurl;

    /** Creates a new Builder */
    private Builder() {
      super(com.adgear.avro.openrtb.App.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(com.adgear.avro.openrtb.App.Builder other) {
      super(other);
    }
    
    /** Creates a Builder by copying an existing App instance */
    private Builder(com.adgear.avro.openrtb.App other) {
      super(com.adgear.avro.openrtb.App.SCHEMA$);
      if (isValidValue(fields()[0], other.id)) {
        this.id = data().deepCopy(fields()[0].schema(), other.id);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.name)) {
        this.name = data().deepCopy(fields()[1].schema(), other.name);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.domain)) {
        this.domain = data().deepCopy(fields()[2].schema(), other.domain);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.cat)) {
        this.cat = data().deepCopy(fields()[3].schema(), other.cat);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.sectioncat)) {
        this.sectioncat = data().deepCopy(fields()[4].schema(), other.sectioncat);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.pagecat)) {
        this.pagecat = data().deepCopy(fields()[5].schema(), other.pagecat);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.ver)) {
        this.ver = data().deepCopy(fields()[6].schema(), other.ver);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.bundle)) {
        this.bundle = data().deepCopy(fields()[7].schema(), other.bundle);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.privacypolicy)) {
        this.privacypolicy = data().deepCopy(fields()[8].schema(), other.privacypolicy);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.paid)) {
        this.paid = data().deepCopy(fields()[9].schema(), other.paid);
        fieldSetFlags()[9] = true;
      }
      if (isValidValue(fields()[10], other.publisher)) {
        this.publisher = data().deepCopy(fields()[10].schema(), other.publisher);
        fieldSetFlags()[10] = true;
      }
      if (isValidValue(fields()[11], other.content)) {
        this.content = data().deepCopy(fields()[11].schema(), other.content);
        fieldSetFlags()[11] = true;
      }
      if (isValidValue(fields()[12], other.keywords)) {
        this.keywords = data().deepCopy(fields()[12].schema(), other.keywords);
        fieldSetFlags()[12] = true;
      }
      if (isValidValue(fields()[13], other.storeurl)) {
        this.storeurl = data().deepCopy(fields()[13].schema(), other.storeurl);
        fieldSetFlags()[13] = true;
      }
    }

    /** Gets the value of the 'id' field */
    public java.lang.CharSequence getId() {
      return id;
    }

    /** Sets the value of the 'id' field */
    public com.adgear.avro.openrtb.App.Builder setId(java.lang.CharSequence value) {
      validate(fields()[0], value);
      this.id = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'id' field has been set */
    public boolean hasId() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'id' field */
    public com.adgear.avro.openrtb.App.Builder clearId() {
      id = null;
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'name' field */
    public java.lang.CharSequence getName() {
      return name;
    }

    /** Sets the value of the 'name' field */
    public com.adgear.avro.openrtb.App.Builder setName(java.lang.CharSequence value) {
      validate(fields()[1], value);
      this.name = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'name' field has been set */
    public boolean hasName() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'name' field */
    public com.adgear.avro.openrtb.App.Builder clearName() {
      name = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'domain' field */
    public java.lang.CharSequence getDomain() {
      return domain;
    }

    /** Sets the value of the 'domain' field */
    public com.adgear.avro.openrtb.App.Builder setDomain(java.lang.CharSequence value) {
      validate(fields()[2], value);
      this.domain = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'domain' field has been set */
    public boolean hasDomain() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'domain' field */
    public com.adgear.avro.openrtb.App.Builder clearDomain() {
      domain = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'cat' field */
    public java.util.List getCat() {
      return cat;
    }

    /** Sets the value of the 'cat' field */
    public com.adgear.avro.openrtb.App.Builder setCat(java.util.List value) {
      validate(fields()[3], value);
      this.cat = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'cat' field has been set */
    public boolean hasCat() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'cat' field */
    public com.adgear.avro.openrtb.App.Builder clearCat() {
      cat = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'sectioncat' field */
    public java.util.List getSectioncat() {
      return sectioncat;
    }

    /** Sets the value of the 'sectioncat' field */
    public com.adgear.avro.openrtb.App.Builder setSectioncat(java.util.List value) {
      validate(fields()[4], value);
      this.sectioncat = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'sectioncat' field has been set */
    public boolean hasSectioncat() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'sectioncat' field */
    public com.adgear.avro.openrtb.App.Builder clearSectioncat() {
      sectioncat = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'pagecat' field */
    public java.util.List getPagecat() {
      return pagecat;
    }

    /** Sets the value of the 'pagecat' field */
    public com.adgear.avro.openrtb.App.Builder setPagecat(java.util.List value) {
      validate(fields()[5], value);
      this.pagecat = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'pagecat' field has been set */
    public boolean hasPagecat() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'pagecat' field */
    public com.adgear.avro.openrtb.App.Builder clearPagecat() {
      pagecat = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'ver' field */
    public java.lang.CharSequence getVer() {
      return ver;
    }

    /** Sets the value of the 'ver' field */
    public com.adgear.avro.openrtb.App.Builder setVer(java.lang.CharSequence value) {
      validate(fields()[6], value);
      this.ver = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'ver' field has been set */
    public boolean hasVer() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'ver' field */
    public com.adgear.avro.openrtb.App.Builder clearVer() {
      ver = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    /** Gets the value of the 'bundle' field */
    public java.lang.CharSequence getBundle() {
      return bundle;
    }

    /** Sets the value of the 'bundle' field */
    public com.adgear.avro.openrtb.App.Builder setBundle(java.lang.CharSequence value) {
      validate(fields()[7], value);
      this.bundle = value;
      fieldSetFlags()[7] = true;
      return this; 
    }
    
    /** Checks whether the 'bundle' field has been set */
    public boolean hasBundle() {
      return fieldSetFlags()[7];
    }
    
    /** Clears the value of the 'bundle' field */
    public com.adgear.avro.openrtb.App.Builder clearBundle() {
      bundle = null;
      fieldSetFlags()[7] = false;
      return this;
    }

    /** Gets the value of the 'privacypolicy' field */
    public java.lang.Integer getPrivacypolicy() {
      return privacypolicy;
    }

    /** Sets the value of the 'privacypolicy' field */
    public com.adgear.avro.openrtb.App.Builder setPrivacypolicy(java.lang.Integer value) {
      validate(fields()[8], value);
      this.privacypolicy = value;
      fieldSetFlags()[8] = true;
      return this; 
    }
    
    /** Checks whether the 'privacypolicy' field has been set */
    public boolean hasPrivacypolicy() {
      return fieldSetFlags()[8];
    }
    
    /** Clears the value of the 'privacypolicy' field */
    public com.adgear.avro.openrtb.App.Builder clearPrivacypolicy() {
      privacypolicy = null;
      fieldSetFlags()[8] = false;
      return this;
    }

    /** Gets the value of the 'paid' field */
    public java.lang.Integer getPaid() {
      return paid;
    }

    /** Sets the value of the 'paid' field */
    public com.adgear.avro.openrtb.App.Builder setPaid(java.lang.Integer value) {
      validate(fields()[9], value);
      this.paid = value;
      fieldSetFlags()[9] = true;
      return this; 
    }
    
    /** Checks whether the 'paid' field has been set */
    public boolean hasPaid() {
      return fieldSetFlags()[9];
    }
    
    /** Clears the value of the 'paid' field */
    public com.adgear.avro.openrtb.App.Builder clearPaid() {
      paid = null;
      fieldSetFlags()[9] = false;
      return this;
    }

    /** Gets the value of the 'publisher' field */
    public com.adgear.avro.openrtb.Publisher getPublisher() {
      return publisher;
    }

    /** Sets the value of the 'publisher' field */
    public com.adgear.avro.openrtb.App.Builder setPublisher(com.adgear.avro.openrtb.Publisher value) {
      validate(fields()[10], value);
      this.publisher = value;
      fieldSetFlags()[10] = true;
      return this; 
    }
    
    /** Checks whether the 'publisher' field has been set */
    public boolean hasPublisher() {
      return fieldSetFlags()[10];
    }
    
    /** Clears the value of the 'publisher' field */
    public com.adgear.avro.openrtb.App.Builder clearPublisher() {
      publisher = null;
      fieldSetFlags()[10] = false;
      return this;
    }

    /** Gets the value of the 'content' field */
    public com.adgear.avro.openrtb.Content getContent() {
      return content;
    }

    /** Sets the value of the 'content' field */
    public com.adgear.avro.openrtb.App.Builder setContent(com.adgear.avro.openrtb.Content value) {
      validate(fields()[11], value);
      this.content = value;
      fieldSetFlags()[11] = true;
      return this; 
    }
    
    /** Checks whether the 'content' field has been set */
    public boolean hasContent() {
      return fieldSetFlags()[11];
    }
    
    /** Clears the value of the 'content' field */
    public com.adgear.avro.openrtb.App.Builder clearContent() {
      content = null;
      fieldSetFlags()[11] = false;
      return this;
    }

    /** Gets the value of the 'keywords' field */
    public java.lang.CharSequence getKeywords() {
      return keywords;
    }

    /** Sets the value of the 'keywords' field */
    public com.adgear.avro.openrtb.App.Builder setKeywords(java.lang.CharSequence value) {
      validate(fields()[12], value);
      this.keywords = value;
      fieldSetFlags()[12] = true;
      return this; 
    }
    
    /** Checks whether the 'keywords' field has been set */
    public boolean hasKeywords() {
      return fieldSetFlags()[12];
    }
    
    /** Clears the value of the 'keywords' field */
    public com.adgear.avro.openrtb.App.Builder clearKeywords() {
      keywords = null;
      fieldSetFlags()[12] = false;
      return this;
    }

    /** Gets the value of the 'storeurl' field */
    public java.lang.CharSequence getStoreurl() {
      return storeurl;
    }

    /** Sets the value of the 'storeurl' field */
    public com.adgear.avro.openrtb.App.Builder setStoreurl(java.lang.CharSequence value) {
      validate(fields()[13], value);
      this.storeurl = value;
      fieldSetFlags()[13] = true;
      return this; 
    }
    
    /** Checks whether the 'storeurl' field has been set */
    public boolean hasStoreurl() {
      return fieldSetFlags()[13];
    }
    
    /** Clears the value of the 'storeurl' field */
    public com.adgear.avro.openrtb.App.Builder clearStoreurl() {
      storeurl = null;
      fieldSetFlags()[13] = false;
      return this;
    }

    @Override
    public App build() {
      try {
        App record = new App();
        record.id = fieldSetFlags()[0] ? this.id : (java.lang.CharSequence) defaultValue(fields()[0]);
        record.name = fieldSetFlags()[1] ? this.name : (java.lang.CharSequence) defaultValue(fields()[1]);
        record.domain = fieldSetFlags()[2] ? this.domain : (java.lang.CharSequence) defaultValue(fields()[2]);
        record.cat = fieldSetFlags()[3] ? this.cat : (java.util.List) defaultValue(fields()[3]);
        record.sectioncat = fieldSetFlags()[4] ? this.sectioncat : (java.util.List) defaultValue(fields()[4]);
        record.pagecat = fieldSetFlags()[5] ? this.pagecat : (java.util.List) defaultValue(fields()[5]);
        record.ver = fieldSetFlags()[6] ? this.ver : (java.lang.CharSequence) defaultValue(fields()[6]);
        record.bundle = fieldSetFlags()[7] ? this.bundle : (java.lang.CharSequence) defaultValue(fields()[7]);
        record.privacypolicy = fieldSetFlags()[8] ? this.privacypolicy : (java.lang.Integer) defaultValue(fields()[8]);
        record.paid = fieldSetFlags()[9] ? this.paid : (java.lang.Integer) defaultValue(fields()[9]);
        record.publisher = fieldSetFlags()[10] ? this.publisher : (com.adgear.avro.openrtb.Publisher) defaultValue(fields()[10]);
        record.content = fieldSetFlags()[11] ? this.content : (com.adgear.avro.openrtb.Content) defaultValue(fields()[11]);
        record.keywords = fieldSetFlags()[12] ? this.keywords : (java.lang.CharSequence) defaultValue(fields()[12]);
        record.storeurl = fieldSetFlags()[13] ? this.storeurl : (java.lang.CharSequence) defaultValue(fields()[13]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy