View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *     http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  /**
18   * Autogenerated by Thrift Compiler (0.9.0)
19   *
20   * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
21   *  @generated
22   */
23  package org.apache.accumulo.core.master.thrift;
24  
25  import org.apache.thrift.scheme.IScheme;
26  import org.apache.thrift.scheme.SchemeFactory;
27  import org.apache.thrift.scheme.StandardScheme;
28  
29  import org.apache.thrift.scheme.TupleScheme;
30  import org.apache.thrift.protocol.TTupleProtocol;
31  import org.apache.thrift.protocol.TProtocolException;
32  import org.apache.thrift.EncodingUtils;
33  import org.apache.thrift.TException;
34  import java.util.List;
35  import java.util.ArrayList;
36  import java.util.Map;
37  import java.util.HashMap;
38  import java.util.EnumMap;
39  import java.util.Set;
40  import java.util.HashSet;
41  import java.util.EnumSet;
42  import java.util.Collections;
43  import java.util.BitSet;
44  import java.nio.ByteBuffer;
45  import java.util.Arrays;
46  import org.slf4j.Logger;
47  import org.slf4j.LoggerFactory;
48  
49  @SuppressWarnings("all") public class TableInfo implements org.apache.thrift.TBase<TableInfo, TableInfo._Fields>, java.io.Serializable, Cloneable {
50    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableInfo");
51  
52    private static final org.apache.thrift.protocol.TField RECS_FIELD_DESC = new org.apache.thrift.protocol.TField("recs", org.apache.thrift.protocol.TType.I64, (short)1);
53    private static final org.apache.thrift.protocol.TField RECS_IN_MEMORY_FIELD_DESC = new org.apache.thrift.protocol.TField("recsInMemory", org.apache.thrift.protocol.TType.I64, (short)2);
54    private static final org.apache.thrift.protocol.TField TABLETS_FIELD_DESC = new org.apache.thrift.protocol.TField("tablets", org.apache.thrift.protocol.TType.I32, (short)3);
55    private static final org.apache.thrift.protocol.TField ONLINE_TABLETS_FIELD_DESC = new org.apache.thrift.protocol.TField("onlineTablets", org.apache.thrift.protocol.TType.I32, (short)4);
56    private static final org.apache.thrift.protocol.TField INGEST_RATE_FIELD_DESC = new org.apache.thrift.protocol.TField("ingestRate", org.apache.thrift.protocol.TType.DOUBLE, (short)5);
57    private static final org.apache.thrift.protocol.TField INGEST_BYTE_RATE_FIELD_DESC = new org.apache.thrift.protocol.TField("ingestByteRate", org.apache.thrift.protocol.TType.DOUBLE, (short)6);
58    private static final org.apache.thrift.protocol.TField QUERY_RATE_FIELD_DESC = new org.apache.thrift.protocol.TField("queryRate", org.apache.thrift.protocol.TType.DOUBLE, (short)7);
59    private static final org.apache.thrift.protocol.TField QUERY_BYTE_RATE_FIELD_DESC = new org.apache.thrift.protocol.TField("queryByteRate", org.apache.thrift.protocol.TType.DOUBLE, (short)8);
60    private static final org.apache.thrift.protocol.TField MINORS_FIELD_DESC = new org.apache.thrift.protocol.TField("minors", org.apache.thrift.protocol.TType.STRUCT, (short)9);
61    private static final org.apache.thrift.protocol.TField MAJORS_FIELD_DESC = new org.apache.thrift.protocol.TField("majors", org.apache.thrift.protocol.TType.STRUCT, (short)10);
62    private static final org.apache.thrift.protocol.TField SCANS_FIELD_DESC = new org.apache.thrift.protocol.TField("scans", org.apache.thrift.protocol.TType.STRUCT, (short)11);
63    private static final org.apache.thrift.protocol.TField SCAN_RATE_FIELD_DESC = new org.apache.thrift.protocol.TField("scanRate", org.apache.thrift.protocol.TType.DOUBLE, (short)12);
64  
65    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
66    static {
67      schemes.put(StandardScheme.class, new TableInfoStandardSchemeFactory());
68      schemes.put(TupleScheme.class, new TableInfoTupleSchemeFactory());
69    }
70  
71    public long recs; // required
72    public long recsInMemory; // required
73    public int tablets; // required
74    public int onlineTablets; // required
75    public double ingestRate; // required
76    public double ingestByteRate; // required
77    public double queryRate; // required
78    public double queryByteRate; // required
79    public Compacting minors; // required
80    public Compacting majors; // required
81    public Compacting scans; // required
82    public double scanRate; // required
83  
84    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
85    @SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
86      RECS((short)1, "recs"),
87      RECS_IN_MEMORY((short)2, "recsInMemory"),
88      TABLETS((short)3, "tablets"),
89      ONLINE_TABLETS((short)4, "onlineTablets"),
90      INGEST_RATE((short)5, "ingestRate"),
91      INGEST_BYTE_RATE((short)6, "ingestByteRate"),
92      QUERY_RATE((short)7, "queryRate"),
93      QUERY_BYTE_RATE((short)8, "queryByteRate"),
94      MINORS((short)9, "minors"),
95      MAJORS((short)10, "majors"),
96      SCANS((short)11, "scans"),
97      SCAN_RATE((short)12, "scanRate");
98  
99      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
100 
101     static {
102       for (_Fields field : EnumSet.allOf(_Fields.class)) {
103         byName.put(field.getFieldName(), field);
104       }
105     }
106 
107     /**
108      * Find the _Fields constant that matches fieldId, or null if its not found.
109      */
110     public static _Fields findByThriftId(int fieldId) {
111       switch(fieldId) {
112         case 1: // RECS
113           return RECS;
114         case 2: // RECS_IN_MEMORY
115           return RECS_IN_MEMORY;
116         case 3: // TABLETS
117           return TABLETS;
118         case 4: // ONLINE_TABLETS
119           return ONLINE_TABLETS;
120         case 5: // INGEST_RATE
121           return INGEST_RATE;
122         case 6: // INGEST_BYTE_RATE
123           return INGEST_BYTE_RATE;
124         case 7: // QUERY_RATE
125           return QUERY_RATE;
126         case 8: // QUERY_BYTE_RATE
127           return QUERY_BYTE_RATE;
128         case 9: // MINORS
129           return MINORS;
130         case 10: // MAJORS
131           return MAJORS;
132         case 11: // SCANS
133           return SCANS;
134         case 12: // SCAN_RATE
135           return SCAN_RATE;
136         default:
137           return null;
138       }
139     }
140 
141     /**
142      * Find the _Fields constant that matches fieldId, throwing an exception
143      * if it is not found.
144      */
145     public static _Fields findByThriftIdOrThrow(int fieldId) {
146       _Fields fields = findByThriftId(fieldId);
147       if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
148       return fields;
149     }
150 
151     /**
152      * Find the _Fields constant that matches name, or null if its not found.
153      */
154     public static _Fields findByName(String name) {
155       return byName.get(name);
156     }
157 
158     private final short _thriftId;
159     private final String _fieldName;
160 
161     _Fields(short thriftId, String fieldName) {
162       _thriftId = thriftId;
163       _fieldName = fieldName;
164     }
165 
166     public short getThriftFieldId() {
167       return _thriftId;
168     }
169 
170     public String getFieldName() {
171       return _fieldName;
172     }
173   }
174 
175   // isset id assignments
176   private static final int __RECS_ISSET_ID = 0;
177   private static final int __RECSINMEMORY_ISSET_ID = 1;
178   private static final int __TABLETS_ISSET_ID = 2;
179   private static final int __ONLINETABLETS_ISSET_ID = 3;
180   private static final int __INGESTRATE_ISSET_ID = 4;
181   private static final int __INGESTBYTERATE_ISSET_ID = 5;
182   private static final int __QUERYRATE_ISSET_ID = 6;
183   private static final int __QUERYBYTERATE_ISSET_ID = 7;
184   private static final int __SCANRATE_ISSET_ID = 8;
185   private short __isset_bitfield = 0;
186   public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
187   static {
188     Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
189     tmpMap.put(_Fields.RECS, new org.apache.thrift.meta_data.FieldMetaData("recs", org.apache.thrift.TFieldRequirementType.DEFAULT, 
190         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
191     tmpMap.put(_Fields.RECS_IN_MEMORY, new org.apache.thrift.meta_data.FieldMetaData("recsInMemory", org.apache.thrift.TFieldRequirementType.DEFAULT, 
192         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
193     tmpMap.put(_Fields.TABLETS, new org.apache.thrift.meta_data.FieldMetaData("tablets", org.apache.thrift.TFieldRequirementType.DEFAULT, 
194         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
195     tmpMap.put(_Fields.ONLINE_TABLETS, new org.apache.thrift.meta_data.FieldMetaData("onlineTablets", org.apache.thrift.TFieldRequirementType.DEFAULT, 
196         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
197     tmpMap.put(_Fields.INGEST_RATE, new org.apache.thrift.meta_data.FieldMetaData("ingestRate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
198         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
199     tmpMap.put(_Fields.INGEST_BYTE_RATE, new org.apache.thrift.meta_data.FieldMetaData("ingestByteRate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
200         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
201     tmpMap.put(_Fields.QUERY_RATE, new org.apache.thrift.meta_data.FieldMetaData("queryRate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
202         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
203     tmpMap.put(_Fields.QUERY_BYTE_RATE, new org.apache.thrift.meta_data.FieldMetaData("queryByteRate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
204         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
205     tmpMap.put(_Fields.MINORS, new org.apache.thrift.meta_data.FieldMetaData("minors", org.apache.thrift.TFieldRequirementType.DEFAULT, 
206         new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Compacting.class)));
207     tmpMap.put(_Fields.MAJORS, new org.apache.thrift.meta_data.FieldMetaData("majors", org.apache.thrift.TFieldRequirementType.DEFAULT, 
208         new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Compacting.class)));
209     tmpMap.put(_Fields.SCANS, new org.apache.thrift.meta_data.FieldMetaData("scans", org.apache.thrift.TFieldRequirementType.DEFAULT, 
210         new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Compacting.class)));
211     tmpMap.put(_Fields.SCAN_RATE, new org.apache.thrift.meta_data.FieldMetaData("scanRate", org.apache.thrift.TFieldRequirementType.DEFAULT, 
212         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.DOUBLE)));
213     metaDataMap = Collections.unmodifiableMap(tmpMap);
214     org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TableInfo.class, metaDataMap);
215   }
216 
217   public TableInfo() {
218   }
219 
220   public TableInfo(
221     long recs,
222     long recsInMemory,
223     int tablets,
224     int onlineTablets,
225     double ingestRate,
226     double ingestByteRate,
227     double queryRate,
228     double queryByteRate,
229     Compacting minors,
230     Compacting majors,
231     Compacting scans,
232     double scanRate)
233   {
234     this();
235     this.recs = recs;
236     setRecsIsSet(true);
237     this.recsInMemory = recsInMemory;
238     setRecsInMemoryIsSet(true);
239     this.tablets = tablets;
240     setTabletsIsSet(true);
241     this.onlineTablets = onlineTablets;
242     setOnlineTabletsIsSet(true);
243     this.ingestRate = ingestRate;
244     setIngestRateIsSet(true);
245     this.ingestByteRate = ingestByteRate;
246     setIngestByteRateIsSet(true);
247     this.queryRate = queryRate;
248     setQueryRateIsSet(true);
249     this.queryByteRate = queryByteRate;
250     setQueryByteRateIsSet(true);
251     this.minors = minors;
252     this.majors = majors;
253     this.scans = scans;
254     this.scanRate = scanRate;
255     setScanRateIsSet(true);
256   }
257 
258   /**
259    * Performs a deep copy on <i>other</i>.
260    */
261   public TableInfo(TableInfo other) {
262     __isset_bitfield = other.__isset_bitfield;
263     this.recs = other.recs;
264     this.recsInMemory = other.recsInMemory;
265     this.tablets = other.tablets;
266     this.onlineTablets = other.onlineTablets;
267     this.ingestRate = other.ingestRate;
268     this.ingestByteRate = other.ingestByteRate;
269     this.queryRate = other.queryRate;
270     this.queryByteRate = other.queryByteRate;
271     if (other.isSetMinors()) {
272       this.minors = new Compacting(other.minors);
273     }
274     if (other.isSetMajors()) {
275       this.majors = new Compacting(other.majors);
276     }
277     if (other.isSetScans()) {
278       this.scans = new Compacting(other.scans);
279     }
280     this.scanRate = other.scanRate;
281   }
282 
283   public TableInfo deepCopy() {
284     return new TableInfo(this);
285   }
286 
287   @Override
288   public void clear() {
289     setRecsIsSet(false);
290     this.recs = 0;
291     setRecsInMemoryIsSet(false);
292     this.recsInMemory = 0;
293     setTabletsIsSet(false);
294     this.tablets = 0;
295     setOnlineTabletsIsSet(false);
296     this.onlineTablets = 0;
297     setIngestRateIsSet(false);
298     this.ingestRate = 0.0;
299     setIngestByteRateIsSet(false);
300     this.ingestByteRate = 0.0;
301     setQueryRateIsSet(false);
302     this.queryRate = 0.0;
303     setQueryByteRateIsSet(false);
304     this.queryByteRate = 0.0;
305     this.minors = null;
306     this.majors = null;
307     this.scans = null;
308     setScanRateIsSet(false);
309     this.scanRate = 0.0;
310   }
311 
312   public long getRecs() {
313     return this.recs;
314   }
315 
316   public TableInfo setRecs(long recs) {
317     this.recs = recs;
318     setRecsIsSet(true);
319     return this;
320   }
321 
322   public void unsetRecs() {
323     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __RECS_ISSET_ID);
324   }
325 
326   /** Returns true if field recs is set (has been assigned a value) and false otherwise */
327   public boolean isSetRecs() {
328     return EncodingUtils.testBit(__isset_bitfield, __RECS_ISSET_ID);
329   }
330 
331   public void setRecsIsSet(boolean value) {
332     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __RECS_ISSET_ID, value);
333   }
334 
335   public long getRecsInMemory() {
336     return this.recsInMemory;
337   }
338 
339   public TableInfo setRecsInMemory(long recsInMemory) {
340     this.recsInMemory = recsInMemory;
341     setRecsInMemoryIsSet(true);
342     return this;
343   }
344 
345   public void unsetRecsInMemory() {
346     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __RECSINMEMORY_ISSET_ID);
347   }
348 
349   /** Returns true if field recsInMemory is set (has been assigned a value) and false otherwise */
350   public boolean isSetRecsInMemory() {
351     return EncodingUtils.testBit(__isset_bitfield, __RECSINMEMORY_ISSET_ID);
352   }
353 
354   public void setRecsInMemoryIsSet(boolean value) {
355     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __RECSINMEMORY_ISSET_ID, value);
356   }
357 
358   public int getTablets() {
359     return this.tablets;
360   }
361 
362   public TableInfo setTablets(int tablets) {
363     this.tablets = tablets;
364     setTabletsIsSet(true);
365     return this;
366   }
367 
368   public void unsetTablets() {
369     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TABLETS_ISSET_ID);
370   }
371 
372   /** Returns true if field tablets is set (has been assigned a value) and false otherwise */
373   public boolean isSetTablets() {
374     return EncodingUtils.testBit(__isset_bitfield, __TABLETS_ISSET_ID);
375   }
376 
377   public void setTabletsIsSet(boolean value) {
378     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TABLETS_ISSET_ID, value);
379   }
380 
381   public int getOnlineTablets() {
382     return this.onlineTablets;
383   }
384 
385   public TableInfo setOnlineTablets(int onlineTablets) {
386     this.onlineTablets = onlineTablets;
387     setOnlineTabletsIsSet(true);
388     return this;
389   }
390 
391   public void unsetOnlineTablets() {
392     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ONLINETABLETS_ISSET_ID);
393   }
394 
395   /** Returns true if field onlineTablets is set (has been assigned a value) and false otherwise */
396   public boolean isSetOnlineTablets() {
397     return EncodingUtils.testBit(__isset_bitfield, __ONLINETABLETS_ISSET_ID);
398   }
399 
400   public void setOnlineTabletsIsSet(boolean value) {
401     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ONLINETABLETS_ISSET_ID, value);
402   }
403 
404   public double getIngestRate() {
405     return this.ingestRate;
406   }
407 
408   public TableInfo setIngestRate(double ingestRate) {
409     this.ingestRate = ingestRate;
410     setIngestRateIsSet(true);
411     return this;
412   }
413 
414   public void unsetIngestRate() {
415     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __INGESTRATE_ISSET_ID);
416   }
417 
418   /** Returns true if field ingestRate is set (has been assigned a value) and false otherwise */
419   public boolean isSetIngestRate() {
420     return EncodingUtils.testBit(__isset_bitfield, __INGESTRATE_ISSET_ID);
421   }
422 
423   public void setIngestRateIsSet(boolean value) {
424     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __INGESTRATE_ISSET_ID, value);
425   }
426 
427   public double getIngestByteRate() {
428     return this.ingestByteRate;
429   }
430 
431   public TableInfo setIngestByteRate(double ingestByteRate) {
432     this.ingestByteRate = ingestByteRate;
433     setIngestByteRateIsSet(true);
434     return this;
435   }
436 
437   public void unsetIngestByteRate() {
438     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __INGESTBYTERATE_ISSET_ID);
439   }
440 
441   /** Returns true if field ingestByteRate is set (has been assigned a value) and false otherwise */
442   public boolean isSetIngestByteRate() {
443     return EncodingUtils.testBit(__isset_bitfield, __INGESTBYTERATE_ISSET_ID);
444   }
445 
446   public void setIngestByteRateIsSet(boolean value) {
447     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __INGESTBYTERATE_ISSET_ID, value);
448   }
449 
450   public double getQueryRate() {
451     return this.queryRate;
452   }
453 
454   public TableInfo setQueryRate(double queryRate) {
455     this.queryRate = queryRate;
456     setQueryRateIsSet(true);
457     return this;
458   }
459 
460   public void unsetQueryRate() {
461     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __QUERYRATE_ISSET_ID);
462   }
463 
464   /** Returns true if field queryRate is set (has been assigned a value) and false otherwise */
465   public boolean isSetQueryRate() {
466     return EncodingUtils.testBit(__isset_bitfield, __QUERYRATE_ISSET_ID);
467   }
468 
469   public void setQueryRateIsSet(boolean value) {
470     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __QUERYRATE_ISSET_ID, value);
471   }
472 
473   public double getQueryByteRate() {
474     return this.queryByteRate;
475   }
476 
477   public TableInfo setQueryByteRate(double queryByteRate) {
478     this.queryByteRate = queryByteRate;
479     setQueryByteRateIsSet(true);
480     return this;
481   }
482 
483   public void unsetQueryByteRate() {
484     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __QUERYBYTERATE_ISSET_ID);
485   }
486 
487   /** Returns true if field queryByteRate is set (has been assigned a value) and false otherwise */
488   public boolean isSetQueryByteRate() {
489     return EncodingUtils.testBit(__isset_bitfield, __QUERYBYTERATE_ISSET_ID);
490   }
491 
492   public void setQueryByteRateIsSet(boolean value) {
493     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __QUERYBYTERATE_ISSET_ID, value);
494   }
495 
496   public Compacting getMinors() {
497     return this.minors;
498   }
499 
500   public TableInfo setMinors(Compacting minors) {
501     this.minors = minors;
502     return this;
503   }
504 
505   public void unsetMinors() {
506     this.minors = null;
507   }
508 
509   /** Returns true if field minors is set (has been assigned a value) and false otherwise */
510   public boolean isSetMinors() {
511     return this.minors != null;
512   }
513 
514   public void setMinorsIsSet(boolean value) {
515     if (!value) {
516       this.minors = null;
517     }
518   }
519 
520   public Compacting getMajors() {
521     return this.majors;
522   }
523 
524   public TableInfo setMajors(Compacting majors) {
525     this.majors = majors;
526     return this;
527   }
528 
529   public void unsetMajors() {
530     this.majors = null;
531   }
532 
533   /** Returns true if field majors is set (has been assigned a value) and false otherwise */
534   public boolean isSetMajors() {
535     return this.majors != null;
536   }
537 
538   public void setMajorsIsSet(boolean value) {
539     if (!value) {
540       this.majors = null;
541     }
542   }
543 
544   public Compacting getScans() {
545     return this.scans;
546   }
547 
548   public TableInfo setScans(Compacting scans) {
549     this.scans = scans;
550     return this;
551   }
552 
553   public void unsetScans() {
554     this.scans = null;
555   }
556 
557   /** Returns true if field scans is set (has been assigned a value) and false otherwise */
558   public boolean isSetScans() {
559     return this.scans != null;
560   }
561 
562   public void setScansIsSet(boolean value) {
563     if (!value) {
564       this.scans = null;
565     }
566   }
567 
568   public double getScanRate() {
569     return this.scanRate;
570   }
571 
572   public TableInfo setScanRate(double scanRate) {
573     this.scanRate = scanRate;
574     setScanRateIsSet(true);
575     return this;
576   }
577 
578   public void unsetScanRate() {
579     __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SCANRATE_ISSET_ID);
580   }
581 
582   /** Returns true if field scanRate is set (has been assigned a value) and false otherwise */
583   public boolean isSetScanRate() {
584     return EncodingUtils.testBit(__isset_bitfield, __SCANRATE_ISSET_ID);
585   }
586 
587   public void setScanRateIsSet(boolean value) {
588     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SCANRATE_ISSET_ID, value);
589   }
590 
591   public void setFieldValue(_Fields field, Object value) {
592     switch (field) {
593     case RECS:
594       if (value == null) {
595         unsetRecs();
596       } else {
597         setRecs((Long)value);
598       }
599       break;
600 
601     case RECS_IN_MEMORY:
602       if (value == null) {
603         unsetRecsInMemory();
604       } else {
605         setRecsInMemory((Long)value);
606       }
607       break;
608 
609     case TABLETS:
610       if (value == null) {
611         unsetTablets();
612       } else {
613         setTablets((Integer)value);
614       }
615       break;
616 
617     case ONLINE_TABLETS:
618       if (value == null) {
619         unsetOnlineTablets();
620       } else {
621         setOnlineTablets((Integer)value);
622       }
623       break;
624 
625     case INGEST_RATE:
626       if (value == null) {
627         unsetIngestRate();
628       } else {
629         setIngestRate((Double)value);
630       }
631       break;
632 
633     case INGEST_BYTE_RATE:
634       if (value == null) {
635         unsetIngestByteRate();
636       } else {
637         setIngestByteRate((Double)value);
638       }
639       break;
640 
641     case QUERY_RATE:
642       if (value == null) {
643         unsetQueryRate();
644       } else {
645         setQueryRate((Double)value);
646       }
647       break;
648 
649     case QUERY_BYTE_RATE:
650       if (value == null) {
651         unsetQueryByteRate();
652       } else {
653         setQueryByteRate((Double)value);
654       }
655       break;
656 
657     case MINORS:
658       if (value == null) {
659         unsetMinors();
660       } else {
661         setMinors((Compacting)value);
662       }
663       break;
664 
665     case MAJORS:
666       if (value == null) {
667         unsetMajors();
668       } else {
669         setMajors((Compacting)value);
670       }
671       break;
672 
673     case SCANS:
674       if (value == null) {
675         unsetScans();
676       } else {
677         setScans((Compacting)value);
678       }
679       break;
680 
681     case SCAN_RATE:
682       if (value == null) {
683         unsetScanRate();
684       } else {
685         setScanRate((Double)value);
686       }
687       break;
688 
689     }
690   }
691 
692   public Object getFieldValue(_Fields field) {
693     switch (field) {
694     case RECS:
695       return Long.valueOf(getRecs());
696 
697     case RECS_IN_MEMORY:
698       return Long.valueOf(getRecsInMemory());
699 
700     case TABLETS:
701       return Integer.valueOf(getTablets());
702 
703     case ONLINE_TABLETS:
704       return Integer.valueOf(getOnlineTablets());
705 
706     case INGEST_RATE:
707       return Double.valueOf(getIngestRate());
708 
709     case INGEST_BYTE_RATE:
710       return Double.valueOf(getIngestByteRate());
711 
712     case QUERY_RATE:
713       return Double.valueOf(getQueryRate());
714 
715     case QUERY_BYTE_RATE:
716       return Double.valueOf(getQueryByteRate());
717 
718     case MINORS:
719       return getMinors();
720 
721     case MAJORS:
722       return getMajors();
723 
724     case SCANS:
725       return getScans();
726 
727     case SCAN_RATE:
728       return Double.valueOf(getScanRate());
729 
730     }
731     throw new IllegalStateException();
732   }
733 
734   /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
735   public boolean isSet(_Fields field) {
736     if (field == null) {
737       throw new IllegalArgumentException();
738     }
739 
740     switch (field) {
741     case RECS:
742       return isSetRecs();
743     case RECS_IN_MEMORY:
744       return isSetRecsInMemory();
745     case TABLETS:
746       return isSetTablets();
747     case ONLINE_TABLETS:
748       return isSetOnlineTablets();
749     case INGEST_RATE:
750       return isSetIngestRate();
751     case INGEST_BYTE_RATE:
752       return isSetIngestByteRate();
753     case QUERY_RATE:
754       return isSetQueryRate();
755     case QUERY_BYTE_RATE:
756       return isSetQueryByteRate();
757     case MINORS:
758       return isSetMinors();
759     case MAJORS:
760       return isSetMajors();
761     case SCANS:
762       return isSetScans();
763     case SCAN_RATE:
764       return isSetScanRate();
765     }
766     throw new IllegalStateException();
767   }
768 
769   @Override
770   public boolean equals(Object that) {
771     if (that == null)
772       return false;
773     if (that instanceof TableInfo)
774       return this.equals((TableInfo)that);
775     return false;
776   }
777 
778   public boolean equals(TableInfo that) {
779     if (that == null)
780       return false;
781 
782     boolean this_present_recs = true;
783     boolean that_present_recs = true;
784     if (this_present_recs || that_present_recs) {
785       if (!(this_present_recs && that_present_recs))
786         return false;
787       if (this.recs != that.recs)
788         return false;
789     }
790 
791     boolean this_present_recsInMemory = true;
792     boolean that_present_recsInMemory = true;
793     if (this_present_recsInMemory || that_present_recsInMemory) {
794       if (!(this_present_recsInMemory && that_present_recsInMemory))
795         return false;
796       if (this.recsInMemory != that.recsInMemory)
797         return false;
798     }
799 
800     boolean this_present_tablets = true;
801     boolean that_present_tablets = true;
802     if (this_present_tablets || that_present_tablets) {
803       if (!(this_present_tablets && that_present_tablets))
804         return false;
805       if (this.tablets != that.tablets)
806         return false;
807     }
808 
809     boolean this_present_onlineTablets = true;
810     boolean that_present_onlineTablets = true;
811     if (this_present_onlineTablets || that_present_onlineTablets) {
812       if (!(this_present_onlineTablets && that_present_onlineTablets))
813         return false;
814       if (this.onlineTablets != that.onlineTablets)
815         return false;
816     }
817 
818     boolean this_present_ingestRate = true;
819     boolean that_present_ingestRate = true;
820     if (this_present_ingestRate || that_present_ingestRate) {
821       if (!(this_present_ingestRate && that_present_ingestRate))
822         return false;
823       if (this.ingestRate != that.ingestRate)
824         return false;
825     }
826 
827     boolean this_present_ingestByteRate = true;
828     boolean that_present_ingestByteRate = true;
829     if (this_present_ingestByteRate || that_present_ingestByteRate) {
830       if (!(this_present_ingestByteRate && that_present_ingestByteRate))
831         return false;
832       if (this.ingestByteRate != that.ingestByteRate)
833         return false;
834     }
835 
836     boolean this_present_queryRate = true;
837     boolean that_present_queryRate = true;
838     if (this_present_queryRate || that_present_queryRate) {
839       if (!(this_present_queryRate && that_present_queryRate))
840         return false;
841       if (this.queryRate != that.queryRate)
842         return false;
843     }
844 
845     boolean this_present_queryByteRate = true;
846     boolean that_present_queryByteRate = true;
847     if (this_present_queryByteRate || that_present_queryByteRate) {
848       if (!(this_present_queryByteRate && that_present_queryByteRate))
849         return false;
850       if (this.queryByteRate != that.queryByteRate)
851         return false;
852     }
853 
854     boolean this_present_minors = true && this.isSetMinors();
855     boolean that_present_minors = true && that.isSetMinors();
856     if (this_present_minors || that_present_minors) {
857       if (!(this_present_minors && that_present_minors))
858         return false;
859       if (!this.minors.equals(that.minors))
860         return false;
861     }
862 
863     boolean this_present_majors = true && this.isSetMajors();
864     boolean that_present_majors = true && that.isSetMajors();
865     if (this_present_majors || that_present_majors) {
866       if (!(this_present_majors && that_present_majors))
867         return false;
868       if (!this.majors.equals(that.majors))
869         return false;
870     }
871 
872     boolean this_present_scans = true && this.isSetScans();
873     boolean that_present_scans = true && that.isSetScans();
874     if (this_present_scans || that_present_scans) {
875       if (!(this_present_scans && that_present_scans))
876         return false;
877       if (!this.scans.equals(that.scans))
878         return false;
879     }
880 
881     boolean this_present_scanRate = true;
882     boolean that_present_scanRate = true;
883     if (this_present_scanRate || that_present_scanRate) {
884       if (!(this_present_scanRate && that_present_scanRate))
885         return false;
886       if (this.scanRate != that.scanRate)
887         return false;
888     }
889 
890     return true;
891   }
892 
893   @Override
894   public int hashCode() {
895     return 0;
896   }
897 
898   public int compareTo(TableInfo other) {
899     if (!getClass().equals(other.getClass())) {
900       return getClass().getName().compareTo(other.getClass().getName());
901     }
902 
903     int lastComparison = 0;
904     TableInfo typedOther = (TableInfo)other;
905 
906     lastComparison = Boolean.valueOf(isSetRecs()).compareTo(typedOther.isSetRecs());
907     if (lastComparison != 0) {
908       return lastComparison;
909     }
910     if (isSetRecs()) {
911       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recs, typedOther.recs);
912       if (lastComparison != 0) {
913         return lastComparison;
914       }
915     }
916     lastComparison = Boolean.valueOf(isSetRecsInMemory()).compareTo(typedOther.isSetRecsInMemory());
917     if (lastComparison != 0) {
918       return lastComparison;
919     }
920     if (isSetRecsInMemory()) {
921       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.recsInMemory, typedOther.recsInMemory);
922       if (lastComparison != 0) {
923         return lastComparison;
924       }
925     }
926     lastComparison = Boolean.valueOf(isSetTablets()).compareTo(typedOther.isSetTablets());
927     if (lastComparison != 0) {
928       return lastComparison;
929     }
930     if (isSetTablets()) {
931       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablets, typedOther.tablets);
932       if (lastComparison != 0) {
933         return lastComparison;
934       }
935     }
936     lastComparison = Boolean.valueOf(isSetOnlineTablets()).compareTo(typedOther.isSetOnlineTablets());
937     if (lastComparison != 0) {
938       return lastComparison;
939     }
940     if (isSetOnlineTablets()) {
941       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.onlineTablets, typedOther.onlineTablets);
942       if (lastComparison != 0) {
943         return lastComparison;
944       }
945     }
946     lastComparison = Boolean.valueOf(isSetIngestRate()).compareTo(typedOther.isSetIngestRate());
947     if (lastComparison != 0) {
948       return lastComparison;
949     }
950     if (isSetIngestRate()) {
951       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestRate, typedOther.ingestRate);
952       if (lastComparison != 0) {
953         return lastComparison;
954       }
955     }
956     lastComparison = Boolean.valueOf(isSetIngestByteRate()).compareTo(typedOther.isSetIngestByteRate());
957     if (lastComparison != 0) {
958       return lastComparison;
959     }
960     if (isSetIngestByteRate()) {
961       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ingestByteRate, typedOther.ingestByteRate);
962       if (lastComparison != 0) {
963         return lastComparison;
964       }
965     }
966     lastComparison = Boolean.valueOf(isSetQueryRate()).compareTo(typedOther.isSetQueryRate());
967     if (lastComparison != 0) {
968       return lastComparison;
969     }
970     if (isSetQueryRate()) {
971       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryRate, typedOther.queryRate);
972       if (lastComparison != 0) {
973         return lastComparison;
974       }
975     }
976     lastComparison = Boolean.valueOf(isSetQueryByteRate()).compareTo(typedOther.isSetQueryByteRate());
977     if (lastComparison != 0) {
978       return lastComparison;
979     }
980     if (isSetQueryByteRate()) {
981       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queryByteRate, typedOther.queryByteRate);
982       if (lastComparison != 0) {
983         return lastComparison;
984       }
985     }
986     lastComparison = Boolean.valueOf(isSetMinors()).compareTo(typedOther.isSetMinors());
987     if (lastComparison != 0) {
988       return lastComparison;
989     }
990     if (isSetMinors()) {
991       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.minors, typedOther.minors);
992       if (lastComparison != 0) {
993         return lastComparison;
994       }
995     }
996     lastComparison = Boolean.valueOf(isSetMajors()).compareTo(typedOther.isSetMajors());
997     if (lastComparison != 0) {
998       return lastComparison;
999     }
1000     if (isSetMajors()) {
1001       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.majors, typedOther.majors);
1002       if (lastComparison != 0) {
1003         return lastComparison;
1004       }
1005     }
1006     lastComparison = Boolean.valueOf(isSetScans()).compareTo(typedOther.isSetScans());
1007     if (lastComparison != 0) {
1008       return lastComparison;
1009     }
1010     if (isSetScans()) {
1011       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scans, typedOther.scans);
1012       if (lastComparison != 0) {
1013         return lastComparison;
1014       }
1015     }
1016     lastComparison = Boolean.valueOf(isSetScanRate()).compareTo(typedOther.isSetScanRate());
1017     if (lastComparison != 0) {
1018       return lastComparison;
1019     }
1020     if (isSetScanRate()) {
1021       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scanRate, typedOther.scanRate);
1022       if (lastComparison != 0) {
1023         return lastComparison;
1024       }
1025     }
1026     return 0;
1027   }
1028 
1029   public _Fields fieldForId(int fieldId) {
1030     return _Fields.findByThriftId(fieldId);
1031   }
1032 
1033   public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
1034     schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
1035   }
1036 
1037   public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
1038     schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
1039   }
1040 
1041   @Override
1042   public String toString() {
1043     StringBuilder sb = new StringBuilder("TableInfo(");
1044     boolean first = true;
1045 
1046     sb.append("recs:");
1047     sb.append(this.recs);
1048     first = false;
1049     if (!first) sb.append(", ");
1050     sb.append("recsInMemory:");
1051     sb.append(this.recsInMemory);
1052     first = false;
1053     if (!first) sb.append(", ");
1054     sb.append("tablets:");
1055     sb.append(this.tablets);
1056     first = false;
1057     if (!first) sb.append(", ");
1058     sb.append("onlineTablets:");
1059     sb.append(this.onlineTablets);
1060     first = false;
1061     if (!first) sb.append(", ");
1062     sb.append("ingestRate:");
1063     sb.append(this.ingestRate);
1064     first = false;
1065     if (!first) sb.append(", ");
1066     sb.append("ingestByteRate:");
1067     sb.append(this.ingestByteRate);
1068     first = false;
1069     if (!first) sb.append(", ");
1070     sb.append("queryRate:");
1071     sb.append(this.queryRate);
1072     first = false;
1073     if (!first) sb.append(", ");
1074     sb.append("queryByteRate:");
1075     sb.append(this.queryByteRate);
1076     first = false;
1077     if (!first) sb.append(", ");
1078     sb.append("minors:");
1079     if (this.minors == null) {
1080       sb.append("null");
1081     } else {
1082       sb.append(this.minors);
1083     }
1084     first = false;
1085     if (!first) sb.append(", ");
1086     sb.append("majors:");
1087     if (this.majors == null) {
1088       sb.append("null");
1089     } else {
1090       sb.append(this.majors);
1091     }
1092     first = false;
1093     if (!first) sb.append(", ");
1094     sb.append("scans:");
1095     if (this.scans == null) {
1096       sb.append("null");
1097     } else {
1098       sb.append(this.scans);
1099     }
1100     first = false;
1101     if (!first) sb.append(", ");
1102     sb.append("scanRate:");
1103     sb.append(this.scanRate);
1104     first = false;
1105     sb.append(")");
1106     return sb.toString();
1107   }
1108 
1109   public void validate() throws org.apache.thrift.TException {
1110     // check for required fields
1111     // check for sub-struct validity
1112     if (minors != null) {
1113       minors.validate();
1114     }
1115     if (majors != null) {
1116       majors.validate();
1117     }
1118     if (scans != null) {
1119       scans.validate();
1120     }
1121   }
1122 
1123   private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
1124     try {
1125       write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
1126     } catch (org.apache.thrift.TException te) {
1127       throw new java.io.IOException(te);
1128     }
1129   }
1130 
1131   private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
1132     try {
1133       // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
1134       __isset_bitfield = 0;
1135       read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
1136     } catch (org.apache.thrift.TException te) {
1137       throw new java.io.IOException(te);
1138     }
1139   }
1140 
1141   private static class TableInfoStandardSchemeFactory implements SchemeFactory {
1142     public TableInfoStandardScheme getScheme() {
1143       return new TableInfoStandardScheme();
1144     }
1145   }
1146 
1147   private static class TableInfoStandardScheme extends StandardScheme<TableInfo> {
1148 
1149     public void read(org.apache.thrift.protocol.TProtocol iprot, TableInfo struct) throws org.apache.thrift.TException {
1150       org.apache.thrift.protocol.TField schemeField;
1151       iprot.readStructBegin();
1152       while (true)
1153       {
1154         schemeField = iprot.readFieldBegin();
1155         if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
1156           break;
1157         }
1158         switch (schemeField.id) {
1159           case 1: // RECS
1160             if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
1161               struct.recs = iprot.readI64();
1162               struct.setRecsIsSet(true);
1163             } else { 
1164               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1165             }
1166             break;
1167           case 2: // RECS_IN_MEMORY
1168             if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
1169               struct.recsInMemory = iprot.readI64();
1170               struct.setRecsInMemoryIsSet(true);
1171             } else { 
1172               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1173             }
1174             break;
1175           case 3: // TABLETS
1176             if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
1177               struct.tablets = iprot.readI32();
1178               struct.setTabletsIsSet(true);
1179             } else { 
1180               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1181             }
1182             break;
1183           case 4: // ONLINE_TABLETS
1184             if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
1185               struct.onlineTablets = iprot.readI32();
1186               struct.setOnlineTabletsIsSet(true);
1187             } else { 
1188               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1189             }
1190             break;
1191           case 5: // INGEST_RATE
1192             if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
1193               struct.ingestRate = iprot.readDouble();
1194               struct.setIngestRateIsSet(true);
1195             } else { 
1196               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1197             }
1198             break;
1199           case 6: // INGEST_BYTE_RATE
1200             if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
1201               struct.ingestByteRate = iprot.readDouble();
1202               struct.setIngestByteRateIsSet(true);
1203             } else { 
1204               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1205             }
1206             break;
1207           case 7: // QUERY_RATE
1208             if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
1209               struct.queryRate = iprot.readDouble();
1210               struct.setQueryRateIsSet(true);
1211             } else { 
1212               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1213             }
1214             break;
1215           case 8: // QUERY_BYTE_RATE
1216             if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
1217               struct.queryByteRate = iprot.readDouble();
1218               struct.setQueryByteRateIsSet(true);
1219             } else { 
1220               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1221             }
1222             break;
1223           case 9: // MINORS
1224             if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
1225               struct.minors = new Compacting();
1226               struct.minors.read(iprot);
1227               struct.setMinorsIsSet(true);
1228             } else { 
1229               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1230             }
1231             break;
1232           case 10: // MAJORS
1233             if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
1234               struct.majors = new Compacting();
1235               struct.majors.read(iprot);
1236               struct.setMajorsIsSet(true);
1237             } else { 
1238               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1239             }
1240             break;
1241           case 11: // SCANS
1242             if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
1243               struct.scans = new Compacting();
1244               struct.scans.read(iprot);
1245               struct.setScansIsSet(true);
1246             } else { 
1247               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1248             }
1249             break;
1250           case 12: // SCAN_RATE
1251             if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
1252               struct.scanRate = iprot.readDouble();
1253               struct.setScanRateIsSet(true);
1254             } else { 
1255               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1256             }
1257             break;
1258           default:
1259             org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
1260         }
1261         iprot.readFieldEnd();
1262       }
1263       iprot.readStructEnd();
1264 
1265       // check for required fields of primitive type, which can't be checked in the validate method
1266       struct.validate();
1267     }
1268 
1269     public void write(org.apache.thrift.protocol.TProtocol oprot, TableInfo struct) throws org.apache.thrift.TException {
1270       struct.validate();
1271 
1272       oprot.writeStructBegin(STRUCT_DESC);
1273       oprot.writeFieldBegin(RECS_FIELD_DESC);
1274       oprot.writeI64(struct.recs);
1275       oprot.writeFieldEnd();
1276       oprot.writeFieldBegin(RECS_IN_MEMORY_FIELD_DESC);
1277       oprot.writeI64(struct.recsInMemory);
1278       oprot.writeFieldEnd();
1279       oprot.writeFieldBegin(TABLETS_FIELD_DESC);
1280       oprot.writeI32(struct.tablets);
1281       oprot.writeFieldEnd();
1282       oprot.writeFieldBegin(ONLINE_TABLETS_FIELD_DESC);
1283       oprot.writeI32(struct.onlineTablets);
1284       oprot.writeFieldEnd();
1285       oprot.writeFieldBegin(INGEST_RATE_FIELD_DESC);
1286       oprot.writeDouble(struct.ingestRate);
1287       oprot.writeFieldEnd();
1288       oprot.writeFieldBegin(INGEST_BYTE_RATE_FIELD_DESC);
1289       oprot.writeDouble(struct.ingestByteRate);
1290       oprot.writeFieldEnd();
1291       oprot.writeFieldBegin(QUERY_RATE_FIELD_DESC);
1292       oprot.writeDouble(struct.queryRate);
1293       oprot.writeFieldEnd();
1294       oprot.writeFieldBegin(QUERY_BYTE_RATE_FIELD_DESC);
1295       oprot.writeDouble(struct.queryByteRate);
1296       oprot.writeFieldEnd();
1297       if (struct.minors != null) {
1298         oprot.writeFieldBegin(MINORS_FIELD_DESC);
1299         struct.minors.write(oprot);
1300         oprot.writeFieldEnd();
1301       }
1302       if (struct.majors != null) {
1303         oprot.writeFieldBegin(MAJORS_FIELD_DESC);
1304         struct.majors.write(oprot);
1305         oprot.writeFieldEnd();
1306       }
1307       if (struct.scans != null) {
1308         oprot.writeFieldBegin(SCANS_FIELD_DESC);
1309         struct.scans.write(oprot);
1310         oprot.writeFieldEnd();
1311       }
1312       oprot.writeFieldBegin(SCAN_RATE_FIELD_DESC);
1313       oprot.writeDouble(struct.scanRate);
1314       oprot.writeFieldEnd();
1315       oprot.writeFieldStop();
1316       oprot.writeStructEnd();
1317     }
1318 
1319   }
1320 
1321   private static class TableInfoTupleSchemeFactory implements SchemeFactory {
1322     public TableInfoTupleScheme getScheme() {
1323       return new TableInfoTupleScheme();
1324     }
1325   }
1326 
1327   private static class TableInfoTupleScheme extends TupleScheme<TableInfo> {
1328 
1329     @Override
1330     public void write(org.apache.thrift.protocol.TProtocol prot, TableInfo struct) throws org.apache.thrift.TException {
1331       TTupleProtocol oprot = (TTupleProtocol) prot;
1332       BitSet optionals = new BitSet();
1333       if (struct.isSetRecs()) {
1334         optionals.set(0);
1335       }
1336       if (struct.isSetRecsInMemory()) {
1337         optionals.set(1);
1338       }
1339       if (struct.isSetTablets()) {
1340         optionals.set(2);
1341       }
1342       if (struct.isSetOnlineTablets()) {
1343         optionals.set(3);
1344       }
1345       if (struct.isSetIngestRate()) {
1346         optionals.set(4);
1347       }
1348       if (struct.isSetIngestByteRate()) {
1349         optionals.set(5);
1350       }
1351       if (struct.isSetQueryRate()) {
1352         optionals.set(6);
1353       }
1354       if (struct.isSetQueryByteRate()) {
1355         optionals.set(7);
1356       }
1357       if (struct.isSetMinors()) {
1358         optionals.set(8);
1359       }
1360       if (struct.isSetMajors()) {
1361         optionals.set(9);
1362       }
1363       if (struct.isSetScans()) {
1364         optionals.set(10);
1365       }
1366       if (struct.isSetScanRate()) {
1367         optionals.set(11);
1368       }
1369       oprot.writeBitSet(optionals, 12);
1370       if (struct.isSetRecs()) {
1371         oprot.writeI64(struct.recs);
1372       }
1373       if (struct.isSetRecsInMemory()) {
1374         oprot.writeI64(struct.recsInMemory);
1375       }
1376       if (struct.isSetTablets()) {
1377         oprot.writeI32(struct.tablets);
1378       }
1379       if (struct.isSetOnlineTablets()) {
1380         oprot.writeI32(struct.onlineTablets);
1381       }
1382       if (struct.isSetIngestRate()) {
1383         oprot.writeDouble(struct.ingestRate);
1384       }
1385       if (struct.isSetIngestByteRate()) {
1386         oprot.writeDouble(struct.ingestByteRate);
1387       }
1388       if (struct.isSetQueryRate()) {
1389         oprot.writeDouble(struct.queryRate);
1390       }
1391       if (struct.isSetQueryByteRate()) {
1392         oprot.writeDouble(struct.queryByteRate);
1393       }
1394       if (struct.isSetMinors()) {
1395         struct.minors.write(oprot);
1396       }
1397       if (struct.isSetMajors()) {
1398         struct.majors.write(oprot);
1399       }
1400       if (struct.isSetScans()) {
1401         struct.scans.write(oprot);
1402       }
1403       if (struct.isSetScanRate()) {
1404         oprot.writeDouble(struct.scanRate);
1405       }
1406     }
1407 
1408     @Override
1409     public void read(org.apache.thrift.protocol.TProtocol prot, TableInfo struct) throws org.apache.thrift.TException {
1410       TTupleProtocol iprot = (TTupleProtocol) prot;
1411       BitSet incoming = iprot.readBitSet(12);
1412       if (incoming.get(0)) {
1413         struct.recs = iprot.readI64();
1414         struct.setRecsIsSet(true);
1415       }
1416       if (incoming.get(1)) {
1417         struct.recsInMemory = iprot.readI64();
1418         struct.setRecsInMemoryIsSet(true);
1419       }
1420       if (incoming.get(2)) {
1421         struct.tablets = iprot.readI32();
1422         struct.setTabletsIsSet(true);
1423       }
1424       if (incoming.get(3)) {
1425         struct.onlineTablets = iprot.readI32();
1426         struct.setOnlineTabletsIsSet(true);
1427       }
1428       if (incoming.get(4)) {
1429         struct.ingestRate = iprot.readDouble();
1430         struct.setIngestRateIsSet(true);
1431       }
1432       if (incoming.get(5)) {
1433         struct.ingestByteRate = iprot.readDouble();
1434         struct.setIngestByteRateIsSet(true);
1435       }
1436       if (incoming.get(6)) {
1437         struct.queryRate = iprot.readDouble();
1438         struct.setQueryRateIsSet(true);
1439       }
1440       if (incoming.get(7)) {
1441         struct.queryByteRate = iprot.readDouble();
1442         struct.setQueryByteRateIsSet(true);
1443       }
1444       if (incoming.get(8)) {
1445         struct.minors = new Compacting();
1446         struct.minors.read(iprot);
1447         struct.setMinorsIsSet(true);
1448       }
1449       if (incoming.get(9)) {
1450         struct.majors = new Compacting();
1451         struct.majors.read(iprot);
1452         struct.setMajorsIsSet(true);
1453       }
1454       if (incoming.get(10)) {
1455         struct.scans = new Compacting();
1456         struct.scans.read(iprot);
1457         struct.setScansIsSet(true);
1458       }
1459       if (incoming.get(11)) {
1460         struct.scanRate = iprot.readDouble();
1461         struct.setScanRateIsSet(true);
1462       }
1463     }
1464   }
1465 
1466 }
1467