001/** 002 * Autogenerated by Avro 003 * 004 * DO NOT EDIT DIRECTLY 005 */ 006package org.apache.reef.runtime.multi.utils.avro; 007 008import org.apache.avro.specific.SpecificData; 009 010@SuppressWarnings("all") 011/** Defines the schema for multi runtime definition. This avro object is used to pass multi runtime definition to the runtimes host */ 012@org.apache.avro.specific.AvroGenerated 013public class AvroMultiRuntimeDefinition extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord { 014 private static final long serialVersionUID = -8864870597261424800L; 015 public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"AvroMultiRuntimeDefinition\",\"namespace\":\"org.apache.reef.runtime.multi.utils.avro\",\"doc\":\"Defines the schema for multi runtime definition. This avro object is used to pass multi runtime definition to the runtimes host\",\"fields\":[{\"name\":\"defaultRuntimeName\",\"type\":\"string\",\"doc\":\"The name of the default runtime\"},{\"name\":\"runtimes\",\"type\":{\"type\":\"array\",\"items\":{\"type\":\"record\",\"name\":\"AvroRuntimeDefinition\",\"doc\":\"Defines the schema for runtime definition. This avro object is used to pass runtimes definitions to the runtimes host\",\"fields\":[{\"name\":\"runtimeName\",\"type\":\"string\",\"doc\":\"The name of the runtime, that will be provided with the resource allocation requests\"},{\"name\":\"serializedConfiguration\",\"type\":\"string\",\"doc\":\"Serialized Tang configuration\"}]}},\"doc\":\"defined runtimes\"}]}"); 016 public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; } 017 /** The name of the default runtime */ 018 @Deprecated public java.lang.CharSequence defaultRuntimeName; 019 /** defined runtimes */ 020 @Deprecated public java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> runtimes; 021 022 /** 023 * Default constructor. Note that this does not initialize fields 024 * to their default values from the schema. If that is desired then 025 * one should use <code>newBuilder()</code>. 026 */ 027 public AvroMultiRuntimeDefinition() {} 028 029 /** 030 * All-args constructor. 031 * @param defaultRuntimeName The name of the default runtime 032 * @param runtimes defined runtimes 033 */ 034 public AvroMultiRuntimeDefinition(java.lang.CharSequence defaultRuntimeName, java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> runtimes) { 035 this.defaultRuntimeName = defaultRuntimeName; 036 this.runtimes = runtimes; 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 defaultRuntimeName; 044 case 1: return runtimes; 045 default: throw new org.apache.avro.AvroRuntimeException("Bad index"); 046 } 047 } 048 049 // Used by DatumReader. Applications should not call. 050 @SuppressWarnings(value="unchecked") 051 public void put(int field$, java.lang.Object value$) { 052 switch (field$) { 053 case 0: defaultRuntimeName = (java.lang.CharSequence)value$; break; 054 case 1: runtimes = (java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition>)value$; break; 055 default: throw new org.apache.avro.AvroRuntimeException("Bad index"); 056 } 057 } 058 059 /** 060 * Gets the value of the 'defaultRuntimeName' field. 061 * @return The name of the default runtime 062 */ 063 public java.lang.CharSequence getDefaultRuntimeName() { 064 return defaultRuntimeName; 065 } 066 067 /** 068 * Sets the value of the 'defaultRuntimeName' field. 069 * The name of the default runtime 070 * @param value the value to set. 071 */ 072 public void setDefaultRuntimeName(java.lang.CharSequence value) { 073 this.defaultRuntimeName = value; 074 } 075 076 /** 077 * Gets the value of the 'runtimes' field. 078 * @return defined runtimes 079 */ 080 public java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> getRuntimes() { 081 return runtimes; 082 } 083 084 /** 085 * Sets the value of the 'runtimes' field. 086 * defined runtimes 087 * @param value the value to set. 088 */ 089 public void setRuntimes(java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> value) { 090 this.runtimes = value; 091 } 092 093 /** 094 * Creates a new AvroMultiRuntimeDefinition RecordBuilder. 095 * @return A new AvroMultiRuntimeDefinition RecordBuilder 096 */ 097 public static org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder newBuilder() { 098 return new org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder(); 099 } 100 101 /** 102 * Creates a new AvroMultiRuntimeDefinition RecordBuilder by copying an existing Builder. 103 * @param other The existing builder to copy. 104 * @return A new AvroMultiRuntimeDefinition RecordBuilder 105 */ 106 public static org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder newBuilder(org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder other) { 107 return new org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder(other); 108 } 109 110 /** 111 * Creates a new AvroMultiRuntimeDefinition RecordBuilder by copying an existing AvroMultiRuntimeDefinition instance. 112 * @param other The existing instance to copy. 113 * @return A new AvroMultiRuntimeDefinition RecordBuilder 114 */ 115 public static org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder newBuilder(org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition other) { 116 return new org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder(other); 117 } 118 119 /** 120 * RecordBuilder for AvroMultiRuntimeDefinition instances. 121 */ 122 public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase<AvroMultiRuntimeDefinition> 123 implements org.apache.avro.data.RecordBuilder<AvroMultiRuntimeDefinition> { 124 125 /** The name of the default runtime */ 126 private java.lang.CharSequence defaultRuntimeName; 127 /** defined runtimes */ 128 private java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> runtimes; 129 130 /** Creates a new Builder */ 131 private Builder() { 132 super(SCHEMA$); 133 } 134 135 /** 136 * Creates a Builder by copying an existing Builder. 137 * @param other The existing Builder to copy. 138 */ 139 private Builder(org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder other) { 140 super(other); 141 if (isValidValue(fields()[0], other.defaultRuntimeName)) { 142 this.defaultRuntimeName = data().deepCopy(fields()[0].schema(), other.defaultRuntimeName); 143 fieldSetFlags()[0] = true; 144 } 145 if (isValidValue(fields()[1], other.runtimes)) { 146 this.runtimes = data().deepCopy(fields()[1].schema(), other.runtimes); 147 fieldSetFlags()[1] = true; 148 } 149 } 150 151 /** 152 * Creates a Builder by copying an existing AvroMultiRuntimeDefinition instance 153 * @param other The existing instance to copy. 154 */ 155 private Builder(org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition other) { 156 super(SCHEMA$); 157 if (isValidValue(fields()[0], other.defaultRuntimeName)) { 158 this.defaultRuntimeName = data().deepCopy(fields()[0].schema(), other.defaultRuntimeName); 159 fieldSetFlags()[0] = true; 160 } 161 if (isValidValue(fields()[1], other.runtimes)) { 162 this.runtimes = data().deepCopy(fields()[1].schema(), other.runtimes); 163 fieldSetFlags()[1] = true; 164 } 165 } 166 167 /** 168 * Gets the value of the 'defaultRuntimeName' field. 169 * The name of the default runtime 170 * @return The value. 171 */ 172 public java.lang.CharSequence getDefaultRuntimeName() { 173 return defaultRuntimeName; 174 } 175 176 /** 177 * Sets the value of the 'defaultRuntimeName' field. 178 * The name of the default runtime 179 * @param value The value of 'defaultRuntimeName'. 180 * @return This builder. 181 */ 182 public org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder setDefaultRuntimeName(java.lang.CharSequence value) { 183 validate(fields()[0], value); 184 this.defaultRuntimeName = value; 185 fieldSetFlags()[0] = true; 186 return this; 187 } 188 189 /** 190 * Checks whether the 'defaultRuntimeName' field has been set. 191 * The name of the default runtime 192 * @return True if the 'defaultRuntimeName' field has been set, false otherwise. 193 */ 194 public boolean hasDefaultRuntimeName() { 195 return fieldSetFlags()[0]; 196 } 197 198 199 /** 200 * Clears the value of the 'defaultRuntimeName' field. 201 * The name of the default runtime 202 * @return This builder. 203 */ 204 public org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder clearDefaultRuntimeName() { 205 defaultRuntimeName = null; 206 fieldSetFlags()[0] = false; 207 return this; 208 } 209 210 /** 211 * Gets the value of the 'runtimes' field. 212 * defined runtimes 213 * @return The value. 214 */ 215 public java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> getRuntimes() { 216 return runtimes; 217 } 218 219 /** 220 * Sets the value of the 'runtimes' field. 221 * defined runtimes 222 * @param value The value of 'runtimes'. 223 * @return This builder. 224 */ 225 public org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder setRuntimes(java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition> value) { 226 validate(fields()[1], value); 227 this.runtimes = value; 228 fieldSetFlags()[1] = true; 229 return this; 230 } 231 232 /** 233 * Checks whether the 'runtimes' field has been set. 234 * defined runtimes 235 * @return True if the 'runtimes' field has been set, false otherwise. 236 */ 237 public boolean hasRuntimes() { 238 return fieldSetFlags()[1]; 239 } 240 241 242 /** 243 * Clears the value of the 'runtimes' field. 244 * defined runtimes 245 * @return This builder. 246 */ 247 public org.apache.reef.runtime.multi.utils.avro.AvroMultiRuntimeDefinition.Builder clearRuntimes() { 248 runtimes = null; 249 fieldSetFlags()[1] = false; 250 return this; 251 } 252 253 @Override 254 public AvroMultiRuntimeDefinition build() { 255 try { 256 AvroMultiRuntimeDefinition record = new AvroMultiRuntimeDefinition(); 257 record.defaultRuntimeName = fieldSetFlags()[0] ? this.defaultRuntimeName : (java.lang.CharSequence) defaultValue(fields()[0]); 258 record.runtimes = fieldSetFlags()[1] ? this.runtimes : (java.util.List<org.apache.reef.runtime.multi.utils.avro.AvroRuntimeDefinition>) defaultValue(fields()[1]); 259 return record; 260 } catch (Exception e) { 261 throw new org.apache.avro.AvroRuntimeException(e); 262 } 263 } 264 } 265 266 private static final org.apache.avro.io.DatumWriter 267 WRITER$ = new org.apache.avro.specific.SpecificDatumWriter(SCHEMA$); 268 269 @Override public void writeExternal(java.io.ObjectOutput out) 270 throws java.io.IOException { 271 WRITER$.write(this, SpecificData.getEncoder(out)); 272 } 273 274 private static final org.apache.avro.io.DatumReader 275 READER$ = new org.apache.avro.specific.SpecificDatumReader(SCHEMA$); 276 277 @Override public void readExternal(java.io.ObjectInput in) 278 throws java.io.IOException { 279 READER$.read(this, SpecificData.getDecoder(in)); 280 } 281 282}