001/**
002 * Autogenerated by Avro
003 *
004 * DO NOT EDIT DIRECTLY
005 */
006package org.apache.reef.webserver;
007
008import org.apache.avro.specific.SpecificData;
009
010@SuppressWarnings("all")
011@org.apache.avro.specific.AvroGenerated
012public class AvroDriverInfo extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
013  private static final long serialVersionUID = -3493120951479724575L;
014  public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"AvroDriverInfo\",\"namespace\":\"org.apache.reef.webserver\",\"fields\":[{\"name\":\"remoteId\",\"type\":\"string\"},{\"name\":\"startTime\",\"type\":\"string\"},{\"name\":\"services\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"AvroReefServiceInfo\",\"fields\":[{\"name\":\"serviceName\",\"type\":\"string\"},{\"name\":\"serviceInfo\",\"type\":\"string\"}]}}}]}");
015  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
016  @Deprecated public java.lang.CharSequence remoteId;
017  @Deprecated public java.lang.CharSequence startTime;
018  @Deprecated public java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> services;
019
020  /**
021   * Default constructor.  Note that this does not initialize fields
022   * to their default values from the schema.  If that is desired then
023   * one should use <code>newBuilder()</code>.
024   */
025  public AvroDriverInfo() {}
026
027  /**
028   * All-args constructor.
029   * @param remoteId The new value for remoteId
030   * @param startTime The new value for startTime
031   * @param services The new value for services
032   */
033  public AvroDriverInfo(java.lang.CharSequence remoteId, java.lang.CharSequence startTime, java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> services) {
034    this.remoteId = remoteId;
035    this.startTime = startTime;
036    this.services = services;
037  }
038
039  public org.apache.avro.Schema getSchema() { return SCHEMA$; }
040  // Used by DatumWriter.  Applications should not call.
041  public java.lang.Object get(int field$) {
042    switch (field$) {
043    case 0: return remoteId;
044    case 1: return startTime;
045    case 2: return services;
046    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
047    }
048  }
049
050  // Used by DatumReader.  Applications should not call.
051  @SuppressWarnings(value="unchecked")
052  public void put(int field$, java.lang.Object value$) {
053    switch (field$) {
054    case 0: remoteId = (java.lang.CharSequence)value$; break;
055    case 1: startTime = (java.lang.CharSequence)value$; break;
056    case 2: services = (java.util.List<org.apache.reef.webserver.AvroReefServiceInfo>)value$; break;
057    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
058    }
059  }
060
061  /**
062   * Gets the value of the 'remoteId' field.
063   * @return The value of the 'remoteId' field.
064   */
065  public java.lang.CharSequence getRemoteId() {
066    return remoteId;
067  }
068
069  /**
070   * Sets the value of the 'remoteId' field.
071   * @param value the value to set.
072   */
073  public void setRemoteId(java.lang.CharSequence value) {
074    this.remoteId = value;
075  }
076
077  /**
078   * Gets the value of the 'startTime' field.
079   * @return The value of the 'startTime' field.
080   */
081  public java.lang.CharSequence getStartTime() {
082    return startTime;
083  }
084
085  /**
086   * Sets the value of the 'startTime' field.
087   * @param value the value to set.
088   */
089  public void setStartTime(java.lang.CharSequence value) {
090    this.startTime = value;
091  }
092
093  /**
094   * Gets the value of the 'services' field.
095   * @return The value of the 'services' field.
096   */
097  public java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> getServices() {
098    return services;
099  }
100
101  /**
102   * Sets the value of the 'services' field.
103   * @param value the value to set.
104   */
105  public void setServices(java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> value) {
106    this.services = value;
107  }
108
109  /**
110   * Creates a new AvroDriverInfo RecordBuilder.
111   * @return A new AvroDriverInfo RecordBuilder
112   */
113  public static org.apache.reef.webserver.AvroDriverInfo.Builder newBuilder() {
114    return new org.apache.reef.webserver.AvroDriverInfo.Builder();
115  }
116
117  /**
118   * Creates a new AvroDriverInfo RecordBuilder by copying an existing Builder.
119   * @param other The existing builder to copy.
120   * @return A new AvroDriverInfo RecordBuilder
121   */
122  public static org.apache.reef.webserver.AvroDriverInfo.Builder newBuilder(org.apache.reef.webserver.AvroDriverInfo.Builder other) {
123    return new org.apache.reef.webserver.AvroDriverInfo.Builder(other);
124  }
125
126  /**
127   * Creates a new AvroDriverInfo RecordBuilder by copying an existing AvroDriverInfo instance.
128   * @param other The existing instance to copy.
129   * @return A new AvroDriverInfo RecordBuilder
130   */
131  public static org.apache.reef.webserver.AvroDriverInfo.Builder newBuilder(org.apache.reef.webserver.AvroDriverInfo other) {
132    return new org.apache.reef.webserver.AvroDriverInfo.Builder(other);
133  }
134
135  /**
136   * RecordBuilder for AvroDriverInfo instances.
137   */
138  public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase<AvroDriverInfo>
139    implements org.apache.avro.data.RecordBuilder<AvroDriverInfo> {
140
141    private java.lang.CharSequence remoteId;
142    private java.lang.CharSequence startTime;
143    private java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> services;
144
145    /** Creates a new Builder */
146    private Builder() {
147      super(SCHEMA$);
148    }
149
150    /**
151     * Creates a Builder by copying an existing Builder.
152     * @param other The existing Builder to copy.
153     */
154    private Builder(org.apache.reef.webserver.AvroDriverInfo.Builder other) {
155      super(other);
156      if (isValidValue(fields()[0], other.remoteId)) {
157        this.remoteId = data().deepCopy(fields()[0].schema(), other.remoteId);
158        fieldSetFlags()[0] = true;
159      }
160      if (isValidValue(fields()[1], other.startTime)) {
161        this.startTime = data().deepCopy(fields()[1].schema(), other.startTime);
162        fieldSetFlags()[1] = true;
163      }
164      if (isValidValue(fields()[2], other.services)) {
165        this.services = data().deepCopy(fields()[2].schema(), other.services);
166        fieldSetFlags()[2] = true;
167      }
168    }
169
170    /**
171     * Creates a Builder by copying an existing AvroDriverInfo instance
172     * @param other The existing instance to copy.
173     */
174    private Builder(org.apache.reef.webserver.AvroDriverInfo other) {
175            super(SCHEMA$);
176      if (isValidValue(fields()[0], other.remoteId)) {
177        this.remoteId = data().deepCopy(fields()[0].schema(), other.remoteId);
178        fieldSetFlags()[0] = true;
179      }
180      if (isValidValue(fields()[1], other.startTime)) {
181        this.startTime = data().deepCopy(fields()[1].schema(), other.startTime);
182        fieldSetFlags()[1] = true;
183      }
184      if (isValidValue(fields()[2], other.services)) {
185        this.services = data().deepCopy(fields()[2].schema(), other.services);
186        fieldSetFlags()[2] = true;
187      }
188    }
189
190    /**
191      * Gets the value of the 'remoteId' field.
192      * @return The value.
193      */
194    public java.lang.CharSequence getRemoteId() {
195      return remoteId;
196    }
197
198    /**
199      * Sets the value of the 'remoteId' field.
200      * @param value The value of 'remoteId'.
201      * @return This builder.
202      */
203    public org.apache.reef.webserver.AvroDriverInfo.Builder setRemoteId(java.lang.CharSequence value) {
204      validate(fields()[0], value);
205      this.remoteId = value;
206      fieldSetFlags()[0] = true;
207      return this;
208    }
209
210    /**
211      * Checks whether the 'remoteId' field has been set.
212      * @return True if the 'remoteId' field has been set, false otherwise.
213      */
214    public boolean hasRemoteId() {
215      return fieldSetFlags()[0];
216    }
217
218
219    /**
220      * Clears the value of the 'remoteId' field.
221      * @return This builder.
222      */
223    public org.apache.reef.webserver.AvroDriverInfo.Builder clearRemoteId() {
224      remoteId = null;
225      fieldSetFlags()[0] = false;
226      return this;
227    }
228
229    /**
230      * Gets the value of the 'startTime' field.
231      * @return The value.
232      */
233    public java.lang.CharSequence getStartTime() {
234      return startTime;
235    }
236
237    /**
238      * Sets the value of the 'startTime' field.
239      * @param value The value of 'startTime'.
240      * @return This builder.
241      */
242    public org.apache.reef.webserver.AvroDriverInfo.Builder setStartTime(java.lang.CharSequence value) {
243      validate(fields()[1], value);
244      this.startTime = value;
245      fieldSetFlags()[1] = true;
246      return this;
247    }
248
249    /**
250      * Checks whether the 'startTime' field has been set.
251      * @return True if the 'startTime' field has been set, false otherwise.
252      */
253    public boolean hasStartTime() {
254      return fieldSetFlags()[1];
255    }
256
257
258    /**
259      * Clears the value of the 'startTime' field.
260      * @return This builder.
261      */
262    public org.apache.reef.webserver.AvroDriverInfo.Builder clearStartTime() {
263      startTime = null;
264      fieldSetFlags()[1] = false;
265      return this;
266    }
267
268    /**
269      * Gets the value of the 'services' field.
270      * @return The value.
271      */
272    public java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> getServices() {
273      return services;
274    }
275
276    /**
277      * Sets the value of the 'services' field.
278      * @param value The value of 'services'.
279      * @return This builder.
280      */
281    public org.apache.reef.webserver.AvroDriverInfo.Builder setServices(java.util.List<org.apache.reef.webserver.AvroReefServiceInfo> value) {
282      validate(fields()[2], value);
283      this.services = value;
284      fieldSetFlags()[2] = true;
285      return this;
286    }
287
288    /**
289      * Checks whether the 'services' field has been set.
290      * @return True if the 'services' field has been set, false otherwise.
291      */
292    public boolean hasServices() {
293      return fieldSetFlags()[2];
294    }
295
296
297    /**
298      * Clears the value of the 'services' field.
299      * @return This builder.
300      */
301    public org.apache.reef.webserver.AvroDriverInfo.Builder clearServices() {
302      services = null;
303      fieldSetFlags()[2] = false;
304      return this;
305    }
306
307    @Override
308    public AvroDriverInfo build() {
309      try {
310        AvroDriverInfo record = new AvroDriverInfo();
311        record.remoteId = fieldSetFlags()[0] ? this.remoteId : (java.lang.CharSequence) defaultValue(fields()[0]);
312        record.startTime = fieldSetFlags()[1] ? this.startTime : (java.lang.CharSequence) defaultValue(fields()[1]);
313        record.services = fieldSetFlags()[2] ? this.services : (java.util.List<org.apache.reef.webserver.AvroReefServiceInfo>) defaultValue(fields()[2]);
314        return record;
315      } catch (Exception e) {
316        throw new org.apache.avro.AvroRuntimeException(e);
317      }
318    }
319  }
320
321  private static final org.apache.avro.io.DatumWriter
322    WRITER$ = new org.apache.avro.specific.SpecificDatumWriter(SCHEMA$);
323
324  @Override public void writeExternal(java.io.ObjectOutput out)
325    throws java.io.IOException {
326    WRITER$.write(this, SpecificData.getEncoder(out));
327  }
328
329  private static final org.apache.avro.io.DatumReader
330    READER$ = new org.apache.avro.specific.SpecificDatumReader(SCHEMA$);
331
332  @Override public void readExternal(java.io.ObjectInput in)
333    throws java.io.IOException {
334    READER$.read(this, SpecificData.getDecoder(in));
335  }
336
337}