incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [19/39] Massive changes to the thrift RPC defs, see mail list for details subject (Rows, Records, Session oh my).
Date Thu, 28 Feb 2013 03:07:38 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/11f5141c/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableDescriptor.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableDescriptor.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableDescriptor.java
new file mode 100644
index 0000000..585c20d
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableDescriptor.java
@@ -0,0 +1,1279 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.blur.thrift.generated;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * 
+ */
+public class TableDescriptor implements org.apache.thrift.TBase<TableDescriptor, TableDescriptor._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableDescriptor");
+
+  private static final org.apache.thrift.protocol.TField NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("name", org.apache.thrift.protocol.TType.STRING, (short)1);
+  private static final org.apache.thrift.protocol.TField ENABLED_FIELD_DESC = new org.apache.thrift.protocol.TField("enabled", org.apache.thrift.protocol.TType.BOOL, (short)2);
+  private static final org.apache.thrift.protocol.TField SHARD_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("shardCount", org.apache.thrift.protocol.TType.I32, (short)3);
+  private static final org.apache.thrift.protocol.TField STORAGE_PATH_FIELD_DESC = new org.apache.thrift.protocol.TField("storagePath", org.apache.thrift.protocol.TType.STRING, (short)4);
+  private static final org.apache.thrift.protocol.TField ANALYZER_FIELD_DESC = new org.apache.thrift.protocol.TField("analyzer", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+  private static final org.apache.thrift.protocol.TField READ_ONLY_FIELD_DESC = new org.apache.thrift.protocol.TField("readOnly", org.apache.thrift.protocol.TType.BOOL, (short)6);
+  private static final org.apache.thrift.protocol.TField DEFAULT_FIELD_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("defaultFieldName", org.apache.thrift.protocol.TType.STRING, (short)7);
+  private static final org.apache.thrift.protocol.TField PROPERTIES_FIELD_DESC = new org.apache.thrift.protocol.TField("properties", org.apache.thrift.protocol.TType.MAP, (short)8);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new TableDescriptorStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new TableDescriptorTupleSchemeFactory());
+  }
+
+  /**
+   * The name of the table.
+   */
+  public String name; // required
+  /**
+   * Is the table enable for queries and updates.
+   */
+  public boolean enabled; // required
+  /**
+   * The number of shards in the table.
+   */
+  public int shardCount; // required
+  /**
+   * The storage path is a HDFS URI for storing all of the indexes.  Any valid HDFS
+   * URI can be used such as hdfs://hostname/path, or file:///path, etc.
+   */
+  public String storagePath; // required
+  /**
+   * The analyzer definition for this table.  If null the default behavior for each
+   * field will be used.
+   */
+  public Analyzer analyzer; // required
+  /**
+   * This will only allow queries to be executed on the table.  The underlying implementation
+   * does not open the index for writing, but will refresh the index periodically.
+   */
+  public boolean readOnly; // required
+  /**
+   * The default field name for any field where the field name is null.
+   */
+  public String defaultFieldName; // required
+  /**
+   * compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
+   */
+  public Map<String,String> properties; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * The name of the table.
+     */
+    NAME((short)1, "name"),
+    /**
+     * Is the table enable for queries and updates.
+     */
+    ENABLED((short)2, "enabled"),
+    /**
+     * The number of shards in the table.
+     */
+    SHARD_COUNT((short)3, "shardCount"),
+    /**
+     * The storage path is a HDFS URI for storing all of the indexes.  Any valid HDFS
+     * URI can be used such as hdfs://hostname/path, or file:///path, etc.
+     */
+    STORAGE_PATH((short)4, "storagePath"),
+    /**
+     * The analyzer definition for this table.  If null the default behavior for each
+     * field will be used.
+     */
+    ANALYZER((short)5, "analyzer"),
+    /**
+     * This will only allow queries to be executed on the table.  The underlying implementation
+     * does not open the index for writing, but will refresh the index periodically.
+     */
+    READ_ONLY((short)6, "readOnly"),
+    /**
+     * The default field name for any field where the field name is null.
+     */
+    DEFAULT_FIELD_NAME((short)7, "defaultFieldName"),
+    /**
+     * compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
+     */
+    PROPERTIES((short)8, "properties");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // NAME
+          return NAME;
+        case 2: // ENABLED
+          return ENABLED;
+        case 3: // SHARD_COUNT
+          return SHARD_COUNT;
+        case 4: // STORAGE_PATH
+          return STORAGE_PATH;
+        case 5: // ANALYZER
+          return ANALYZER;
+        case 6: // READ_ONLY
+          return READ_ONLY;
+        case 7: // DEFAULT_FIELD_NAME
+          return DEFAULT_FIELD_NAME;
+        case 8: // PROPERTIES
+          return PROPERTIES;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  private static final int __ENABLED_ISSET_ID = 0;
+  private static final int __SHARDCOUNT_ISSET_ID = 1;
+  private static final int __READONLY_ISSET_ID = 2;
+  private byte __isset_bitfield = 0;
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.NAME, new org.apache.thrift.meta_data.FieldMetaData("name", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.ENABLED, new org.apache.thrift.meta_data.FieldMetaData("enabled", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    tmpMap.put(_Fields.SHARD_COUNT, new org.apache.thrift.meta_data.FieldMetaData("shardCount", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    tmpMap.put(_Fields.STORAGE_PATH, new org.apache.thrift.meta_data.FieldMetaData("storagePath", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.ANALYZER, new org.apache.thrift.meta_data.FieldMetaData("analyzer", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Analyzer.class)));
+    tmpMap.put(_Fields.READ_ONLY, new org.apache.thrift.meta_data.FieldMetaData("readOnly", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    tmpMap.put(_Fields.DEFAULT_FIELD_NAME, new org.apache.thrift.meta_data.FieldMetaData("defaultFieldName", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.PROPERTIES, new org.apache.thrift.meta_data.FieldMetaData("properties", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.MapMetaData(org.apache.thrift.protocol.TType.MAP, 
+            new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING), 
+            new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TableDescriptor.class, metaDataMap);
+  }
+
+  public TableDescriptor() {
+    this.enabled = true;
+
+    this.shardCount = 1;
+
+    this.readOnly = false;
+
+    this.defaultFieldName = "body";
+
+  }
+
+  public TableDescriptor(
+    String name,
+    boolean enabled,
+    int shardCount,
+    String storagePath,
+    Analyzer analyzer,
+    boolean readOnly,
+    String defaultFieldName,
+    Map<String,String> properties)
+  {
+    this();
+    this.name = name;
+    this.enabled = enabled;
+    setEnabledIsSet(true);
+    this.shardCount = shardCount;
+    setShardCountIsSet(true);
+    this.storagePath = storagePath;
+    this.analyzer = analyzer;
+    this.readOnly = readOnly;
+    setReadOnlyIsSet(true);
+    this.defaultFieldName = defaultFieldName;
+    this.properties = properties;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public TableDescriptor(TableDescriptor other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetName()) {
+      this.name = other.name;
+    }
+    this.enabled = other.enabled;
+    this.shardCount = other.shardCount;
+    if (other.isSetStoragePath()) {
+      this.storagePath = other.storagePath;
+    }
+    if (other.isSetAnalyzer()) {
+      this.analyzer = new Analyzer(other.analyzer);
+    }
+    this.readOnly = other.readOnly;
+    if (other.isSetDefaultFieldName()) {
+      this.defaultFieldName = other.defaultFieldName;
+    }
+    if (other.isSetProperties()) {
+      Map<String,String> __this__properties = new HashMap<String,String>();
+      for (Map.Entry<String, String> other_element : other.properties.entrySet()) {
+
+        String other_element_key = other_element.getKey();
+        String other_element_value = other_element.getValue();
+
+        String __this__properties_copy_key = other_element_key;
+
+        String __this__properties_copy_value = other_element_value;
+
+        __this__properties.put(__this__properties_copy_key, __this__properties_copy_value);
+      }
+      this.properties = __this__properties;
+    }
+  }
+
+  public TableDescriptor deepCopy() {
+    return new TableDescriptor(this);
+  }
+
+  @Override
+  public void clear() {
+    this.name = null;
+    this.enabled = true;
+
+    this.shardCount = 1;
+
+    this.storagePath = null;
+    this.analyzer = null;
+    this.readOnly = false;
+
+    this.defaultFieldName = "body";
+
+    this.properties = null;
+  }
+
+  /**
+   * The name of the table.
+   */
+  public String getName() {
+    return this.name;
+  }
+
+  /**
+   * The name of the table.
+   */
+  public TableDescriptor setName(String name) {
+    this.name = name;
+    return this;
+  }
+
+  public void unsetName() {
+    this.name = null;
+  }
+
+  /** Returns true if field name is set (has been assigned a value) and false otherwise */
+  public boolean isSetName() {
+    return this.name != null;
+  }
+
+  public void setNameIsSet(boolean value) {
+    if (!value) {
+      this.name = null;
+    }
+  }
+
+  /**
+   * Is the table enable for queries and updates.
+   */
+  public boolean isEnabled() {
+    return this.enabled;
+  }
+
+  /**
+   * Is the table enable for queries and updates.
+   */
+  public TableDescriptor setEnabled(boolean enabled) {
+    this.enabled = enabled;
+    setEnabledIsSet(true);
+    return this;
+  }
+
+  public void unsetEnabled() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ENABLED_ISSET_ID);
+  }
+
+  /** Returns true if field enabled is set (has been assigned a value) and false otherwise */
+  public boolean isSetEnabled() {
+    return EncodingUtils.testBit(__isset_bitfield, __ENABLED_ISSET_ID);
+  }
+
+  public void setEnabledIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ENABLED_ISSET_ID, value);
+  }
+
+  /**
+   * The number of shards in the table.
+   */
+  public int getShardCount() {
+    return this.shardCount;
+  }
+
+  /**
+   * The number of shards in the table.
+   */
+  public TableDescriptor setShardCount(int shardCount) {
+    this.shardCount = shardCount;
+    setShardCountIsSet(true);
+    return this;
+  }
+
+  public void unsetShardCount() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SHARDCOUNT_ISSET_ID);
+  }
+
+  /** Returns true if field shardCount is set (has been assigned a value) and false otherwise */
+  public boolean isSetShardCount() {
+    return EncodingUtils.testBit(__isset_bitfield, __SHARDCOUNT_ISSET_ID);
+  }
+
+  public void setShardCountIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SHARDCOUNT_ISSET_ID, value);
+  }
+
+  /**
+   * The storage path is a HDFS URI for storing all of the indexes.  Any valid HDFS
+   * URI can be used such as hdfs://hostname/path, or file:///path, etc.
+   */
+  public String getStoragePath() {
+    return this.storagePath;
+  }
+
+  /**
+   * The storage path is a HDFS URI for storing all of the indexes.  Any valid HDFS
+   * URI can be used such as hdfs://hostname/path, or file:///path, etc.
+   */
+  public TableDescriptor setStoragePath(String storagePath) {
+    this.storagePath = storagePath;
+    return this;
+  }
+
+  public void unsetStoragePath() {
+    this.storagePath = null;
+  }
+
+  /** Returns true if field storagePath is set (has been assigned a value) and false otherwise */
+  public boolean isSetStoragePath() {
+    return this.storagePath != null;
+  }
+
+  public void setStoragePathIsSet(boolean value) {
+    if (!value) {
+      this.storagePath = null;
+    }
+  }
+
+  /**
+   * The analyzer definition for this table.  If null the default behavior for each
+   * field will be used.
+   */
+  public Analyzer getAnalyzer() {
+    return this.analyzer;
+  }
+
+  /**
+   * The analyzer definition for this table.  If null the default behavior for each
+   * field will be used.
+   */
+  public TableDescriptor setAnalyzer(Analyzer analyzer) {
+    this.analyzer = analyzer;
+    return this;
+  }
+
+  public void unsetAnalyzer() {
+    this.analyzer = null;
+  }
+
+  /** Returns true if field analyzer is set (has been assigned a value) and false otherwise */
+  public boolean isSetAnalyzer() {
+    return this.analyzer != null;
+  }
+
+  public void setAnalyzerIsSet(boolean value) {
+    if (!value) {
+      this.analyzer = null;
+    }
+  }
+
+  /**
+   * This will only allow queries to be executed on the table.  The underlying implementation
+   * does not open the index for writing, but will refresh the index periodically.
+   */
+  public boolean isReadOnly() {
+    return this.readOnly;
+  }
+
+  /**
+   * This will only allow queries to be executed on the table.  The underlying implementation
+   * does not open the index for writing, but will refresh the index periodically.
+   */
+  public TableDescriptor setReadOnly(boolean readOnly) {
+    this.readOnly = readOnly;
+    setReadOnlyIsSet(true);
+    return this;
+  }
+
+  public void unsetReadOnly() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __READONLY_ISSET_ID);
+  }
+
+  /** Returns true if field readOnly is set (has been assigned a value) and false otherwise */
+  public boolean isSetReadOnly() {
+    return EncodingUtils.testBit(__isset_bitfield, __READONLY_ISSET_ID);
+  }
+
+  public void setReadOnlyIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __READONLY_ISSET_ID, value);
+  }
+
+  /**
+   * The default field name for any field where the field name is null.
+   */
+  public String getDefaultFieldName() {
+    return this.defaultFieldName;
+  }
+
+  /**
+   * The default field name for any field where the field name is null.
+   */
+  public TableDescriptor setDefaultFieldName(String defaultFieldName) {
+    this.defaultFieldName = defaultFieldName;
+    return this;
+  }
+
+  public void unsetDefaultFieldName() {
+    this.defaultFieldName = null;
+  }
+
+  /** Returns true if field defaultFieldName is set (has been assigned a value) and false otherwise */
+  public boolean isSetDefaultFieldName() {
+    return this.defaultFieldName != null;
+  }
+
+  public void setDefaultFieldNameIsSet(boolean value) {
+    if (!value) {
+      this.defaultFieldName = null;
+    }
+  }
+
+  public int getPropertiesSize() {
+    return (this.properties == null) ? 0 : this.properties.size();
+  }
+
+  public void putToProperties(String key, String val) {
+    if (this.properties == null) {
+      this.properties = new HashMap<String,String>();
+    }
+    this.properties.put(key, val);
+  }
+
+  /**
+   * compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
+   */
+  public Map<String,String> getProperties() {
+    return this.properties;
+  }
+
+  /**
+   * compressionClass,compressionBlockSize,similarityClass,blockCaching = 1,blockCachingFileTypes,columnPreCache
+   */
+  public TableDescriptor setProperties(Map<String,String> properties) {
+    this.properties = properties;
+    return this;
+  }
+
+  public void unsetProperties() {
+    this.properties = null;
+  }
+
+  /** Returns true if field properties is set (has been assigned a value) and false otherwise */
+  public boolean isSetProperties() {
+    return this.properties != null;
+  }
+
+  public void setPropertiesIsSet(boolean value) {
+    if (!value) {
+      this.properties = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case NAME:
+      if (value == null) {
+        unsetName();
+      } else {
+        setName((String)value);
+      }
+      break;
+
+    case ENABLED:
+      if (value == null) {
+        unsetEnabled();
+      } else {
+        setEnabled((Boolean)value);
+      }
+      break;
+
+    case SHARD_COUNT:
+      if (value == null) {
+        unsetShardCount();
+      } else {
+        setShardCount((Integer)value);
+      }
+      break;
+
+    case STORAGE_PATH:
+      if (value == null) {
+        unsetStoragePath();
+      } else {
+        setStoragePath((String)value);
+      }
+      break;
+
+    case ANALYZER:
+      if (value == null) {
+        unsetAnalyzer();
+      } else {
+        setAnalyzer((Analyzer)value);
+      }
+      break;
+
+    case READ_ONLY:
+      if (value == null) {
+        unsetReadOnly();
+      } else {
+        setReadOnly((Boolean)value);
+      }
+      break;
+
+    case DEFAULT_FIELD_NAME:
+      if (value == null) {
+        unsetDefaultFieldName();
+      } else {
+        setDefaultFieldName((String)value);
+      }
+      break;
+
+    case PROPERTIES:
+      if (value == null) {
+        unsetProperties();
+      } else {
+        setProperties((Map<String,String>)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case NAME:
+      return getName();
+
+    case ENABLED:
+      return Boolean.valueOf(isEnabled());
+
+    case SHARD_COUNT:
+      return Integer.valueOf(getShardCount());
+
+    case STORAGE_PATH:
+      return getStoragePath();
+
+    case ANALYZER:
+      return getAnalyzer();
+
+    case READ_ONLY:
+      return Boolean.valueOf(isReadOnly());
+
+    case DEFAULT_FIELD_NAME:
+      return getDefaultFieldName();
+
+    case PROPERTIES:
+      return getProperties();
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case NAME:
+      return isSetName();
+    case ENABLED:
+      return isSetEnabled();
+    case SHARD_COUNT:
+      return isSetShardCount();
+    case STORAGE_PATH:
+      return isSetStoragePath();
+    case ANALYZER:
+      return isSetAnalyzer();
+    case READ_ONLY:
+      return isSetReadOnly();
+    case DEFAULT_FIELD_NAME:
+      return isSetDefaultFieldName();
+    case PROPERTIES:
+      return isSetProperties();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof TableDescriptor)
+      return this.equals((TableDescriptor)that);
+    return false;
+  }
+
+  public boolean equals(TableDescriptor that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_name = true && this.isSetName();
+    boolean that_present_name = true && that.isSetName();
+    if (this_present_name || that_present_name) {
+      if (!(this_present_name && that_present_name))
+        return false;
+      if (!this.name.equals(that.name))
+        return false;
+    }
+
+    boolean this_present_enabled = true;
+    boolean that_present_enabled = true;
+    if (this_present_enabled || that_present_enabled) {
+      if (!(this_present_enabled && that_present_enabled))
+        return false;
+      if (this.enabled != that.enabled)
+        return false;
+    }
+
+    boolean this_present_shardCount = true;
+    boolean that_present_shardCount = true;
+    if (this_present_shardCount || that_present_shardCount) {
+      if (!(this_present_shardCount && that_present_shardCount))
+        return false;
+      if (this.shardCount != that.shardCount)
+        return false;
+    }
+
+    boolean this_present_storagePath = true && this.isSetStoragePath();
+    boolean that_present_storagePath = true && that.isSetStoragePath();
+    if (this_present_storagePath || that_present_storagePath) {
+      if (!(this_present_storagePath && that_present_storagePath))
+        return false;
+      if (!this.storagePath.equals(that.storagePath))
+        return false;
+    }
+
+    boolean this_present_analyzer = true && this.isSetAnalyzer();
+    boolean that_present_analyzer = true && that.isSetAnalyzer();
+    if (this_present_analyzer || that_present_analyzer) {
+      if (!(this_present_analyzer && that_present_analyzer))
+        return false;
+      if (!this.analyzer.equals(that.analyzer))
+        return false;
+    }
+
+    boolean this_present_readOnly = true;
+    boolean that_present_readOnly = true;
+    if (this_present_readOnly || that_present_readOnly) {
+      if (!(this_present_readOnly && that_present_readOnly))
+        return false;
+      if (this.readOnly != that.readOnly)
+        return false;
+    }
+
+    boolean this_present_defaultFieldName = true && this.isSetDefaultFieldName();
+    boolean that_present_defaultFieldName = true && that.isSetDefaultFieldName();
+    if (this_present_defaultFieldName || that_present_defaultFieldName) {
+      if (!(this_present_defaultFieldName && that_present_defaultFieldName))
+        return false;
+      if (!this.defaultFieldName.equals(that.defaultFieldName))
+        return false;
+    }
+
+    boolean this_present_properties = true && this.isSetProperties();
+    boolean that_present_properties = true && that.isSetProperties();
+    if (this_present_properties || that_present_properties) {
+      if (!(this_present_properties && that_present_properties))
+        return false;
+      if (!this.properties.equals(that.properties))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(TableDescriptor other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    TableDescriptor typedOther = (TableDescriptor)other;
+
+    lastComparison = Boolean.valueOf(isSetName()).compareTo(typedOther.isSetName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, typedOther.name);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetEnabled()).compareTo(typedOther.isSetEnabled());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetEnabled()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.enabled, typedOther.enabled);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetShardCount()).compareTo(typedOther.isSetShardCount());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetShardCount()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.shardCount, typedOther.shardCount);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetStoragePath()).compareTo(typedOther.isSetStoragePath());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetStoragePath()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.storagePath, typedOther.storagePath);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetAnalyzer()).compareTo(typedOther.isSetAnalyzer());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetAnalyzer()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.analyzer, typedOther.analyzer);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetReadOnly()).compareTo(typedOther.isSetReadOnly());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetReadOnly()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.readOnly, typedOther.readOnly);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetDefaultFieldName()).compareTo(typedOther.isSetDefaultFieldName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetDefaultFieldName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.defaultFieldName, typedOther.defaultFieldName);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetProperties()).compareTo(typedOther.isSetProperties());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetProperties()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.properties, typedOther.properties);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("TableDescriptor(");
+    boolean first = true;
+
+    sb.append("name:");
+    if (this.name == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.name);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("enabled:");
+    sb.append(this.enabled);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("shardCount:");
+    sb.append(this.shardCount);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("storagePath:");
+    if (this.storagePath == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.storagePath);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("analyzer:");
+    if (this.analyzer == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.analyzer);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("readOnly:");
+    sb.append(this.readOnly);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("defaultFieldName:");
+    if (this.defaultFieldName == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.defaultFieldName);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("properties:");
+    if (this.properties == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.properties);
+    }
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+    if (analyzer != null) {
+      analyzer.validate();
+    }
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class TableDescriptorStandardSchemeFactory implements SchemeFactory {
+    public TableDescriptorStandardScheme getScheme() {
+      return new TableDescriptorStandardScheme();
+    }
+  }
+
+  private static class TableDescriptorStandardScheme extends StandardScheme<TableDescriptor> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, TableDescriptor struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.name = iprot.readString();
+              struct.setNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // ENABLED
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.enabled = iprot.readBool();
+              struct.setEnabledIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // SHARD_COUNT
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.shardCount = iprot.readI32();
+              struct.setShardCountIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // STORAGE_PATH
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.storagePath = iprot.readString();
+              struct.setStoragePathIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // ANALYZER
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+              struct.analyzer = new Analyzer();
+              struct.analyzer.read(iprot);
+              struct.setAnalyzerIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 6: // READ_ONLY
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.readOnly = iprot.readBool();
+              struct.setReadOnlyIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 7: // DEFAULT_FIELD_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.defaultFieldName = iprot.readString();
+              struct.setDefaultFieldNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 8: // PROPERTIES
+            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
+              {
+                org.apache.thrift.protocol.TMap _map34 = iprot.readMapBegin();
+                struct.properties = new HashMap<String,String>(2*_map34.size);
+                for (int _i35 = 0; _i35 < _map34.size; ++_i35)
+                {
+                  String _key36; // required
+                  String _val37; // optional
+                  _key36 = iprot.readString();
+                  _val37 = iprot.readString();
+                  struct.properties.put(_key36, _val37);
+                }
+                iprot.readMapEnd();
+              }
+              struct.setPropertiesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, TableDescriptor struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.name != null) {
+        oprot.writeFieldBegin(NAME_FIELD_DESC);
+        oprot.writeString(struct.name);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldBegin(ENABLED_FIELD_DESC);
+      oprot.writeBool(struct.enabled);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(SHARD_COUNT_FIELD_DESC);
+      oprot.writeI32(struct.shardCount);
+      oprot.writeFieldEnd();
+      if (struct.storagePath != null) {
+        oprot.writeFieldBegin(STORAGE_PATH_FIELD_DESC);
+        oprot.writeString(struct.storagePath);
+        oprot.writeFieldEnd();
+      }
+      if (struct.analyzer != null) {
+        oprot.writeFieldBegin(ANALYZER_FIELD_DESC);
+        struct.analyzer.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldBegin(READ_ONLY_FIELD_DESC);
+      oprot.writeBool(struct.readOnly);
+      oprot.writeFieldEnd();
+      if (struct.defaultFieldName != null) {
+        oprot.writeFieldBegin(DEFAULT_FIELD_NAME_FIELD_DESC);
+        oprot.writeString(struct.defaultFieldName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.properties != null) {
+        oprot.writeFieldBegin(PROPERTIES_FIELD_DESC);
+        {
+          oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, struct.properties.size()));
+          for (Map.Entry<String, String> _iter38 : struct.properties.entrySet())
+          {
+            oprot.writeString(_iter38.getKey());
+            oprot.writeString(_iter38.getValue());
+          }
+          oprot.writeMapEnd();
+        }
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class TableDescriptorTupleSchemeFactory implements SchemeFactory {
+    public TableDescriptorTupleScheme getScheme() {
+      return new TableDescriptorTupleScheme();
+    }
+  }
+
+  private static class TableDescriptorTupleScheme extends TupleScheme<TableDescriptor> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, TableDescriptor struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetName()) {
+        optionals.set(0);
+      }
+      if (struct.isSetEnabled()) {
+        optionals.set(1);
+      }
+      if (struct.isSetShardCount()) {
+        optionals.set(2);
+      }
+      if (struct.isSetStoragePath()) {
+        optionals.set(3);
+      }
+      if (struct.isSetAnalyzer()) {
+        optionals.set(4);
+      }
+      if (struct.isSetReadOnly()) {
+        optionals.set(5);
+      }
+      if (struct.isSetDefaultFieldName()) {
+        optionals.set(6);
+      }
+      if (struct.isSetProperties()) {
+        optionals.set(7);
+      }
+      oprot.writeBitSet(optionals, 8);
+      if (struct.isSetName()) {
+        oprot.writeString(struct.name);
+      }
+      if (struct.isSetEnabled()) {
+        oprot.writeBool(struct.enabled);
+      }
+      if (struct.isSetShardCount()) {
+        oprot.writeI32(struct.shardCount);
+      }
+      if (struct.isSetStoragePath()) {
+        oprot.writeString(struct.storagePath);
+      }
+      if (struct.isSetAnalyzer()) {
+        struct.analyzer.write(oprot);
+      }
+      if (struct.isSetReadOnly()) {
+        oprot.writeBool(struct.readOnly);
+      }
+      if (struct.isSetDefaultFieldName()) {
+        oprot.writeString(struct.defaultFieldName);
+      }
+      if (struct.isSetProperties()) {
+        {
+          oprot.writeI32(struct.properties.size());
+          for (Map.Entry<String, String> _iter39 : struct.properties.entrySet())
+          {
+            oprot.writeString(_iter39.getKey());
+            oprot.writeString(_iter39.getValue());
+          }
+        }
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, TableDescriptor struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(8);
+      if (incoming.get(0)) {
+        struct.name = iprot.readString();
+        struct.setNameIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.enabled = iprot.readBool();
+        struct.setEnabledIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.shardCount = iprot.readI32();
+        struct.setShardCountIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.storagePath = iprot.readString();
+        struct.setStoragePathIsSet(true);
+      }
+      if (incoming.get(4)) {
+        struct.analyzer = new Analyzer();
+        struct.analyzer.read(iprot);
+        struct.setAnalyzerIsSet(true);
+      }
+      if (incoming.get(5)) {
+        struct.readOnly = iprot.readBool();
+        struct.setReadOnlyIsSet(true);
+      }
+      if (incoming.get(6)) {
+        struct.defaultFieldName = iprot.readString();
+        struct.setDefaultFieldNameIsSet(true);
+      }
+      if (incoming.get(7)) {
+        {
+          org.apache.thrift.protocol.TMap _map40 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+          struct.properties = new HashMap<String,String>(2*_map40.size);
+          for (int _i41 = 0; _i41 < _map40.size; ++_i41)
+          {
+            String _key42; // required
+            String _val43; // optional
+            _key42 = iprot.readString();
+            _val43 = iprot.readString();
+            struct.properties.put(_key42, _val43);
+          }
+        }
+        struct.setPropertiesIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/11f5141c/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableSchema.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableSchema.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableSchema.java
new file mode 100644
index 0000000..0faa76d
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableSchema.java
@@ -0,0 +1,586 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.blur.thrift.generated;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * TableSchema contains field information that describes the a table.
+ */
+public class TableSchema implements org.apache.thrift.TBase<TableSchema, TableSchema._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableSchema");
+
+  private static final org.apache.thrift.protocol.TField FIELDS_FIELD_DESC = new org.apache.thrift.protocol.TField("fields", org.apache.thrift.protocol.TType.LIST, (short)1);
+  private static final org.apache.thrift.protocol.TField CLUSTER_FIELD_DESC = new org.apache.thrift.protocol.TField("cluster", org.apache.thrift.protocol.TType.STRING, (short)2);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new TableSchemaStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new TableSchemaTupleSchemeFactory());
+  }
+
+  /**
+   * List of field information for a table.
+   */
+  public List<FieldSchema> fields; // required
+  /**
+   * The cluster name in which this table exists.
+   */
+  public String cluster; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * List of field information for a table.
+     */
+    FIELDS((short)1, "fields"),
+    /**
+     * The cluster name in which this table exists.
+     */
+    CLUSTER((short)2, "cluster");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // FIELDS
+          return FIELDS;
+        case 2: // CLUSTER
+          return CLUSTER;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.FIELDS, new org.apache.thrift.meta_data.FieldMetaData("fields", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
+            new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, FieldSchema.class))));
+    tmpMap.put(_Fields.CLUSTER, new org.apache.thrift.meta_data.FieldMetaData("cluster", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TableSchema.class, metaDataMap);
+  }
+
+  public TableSchema() {
+  }
+
+  public TableSchema(
+    List<FieldSchema> fields,
+    String cluster)
+  {
+    this();
+    this.fields = fields;
+    this.cluster = cluster;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public TableSchema(TableSchema other) {
+    if (other.isSetFields()) {
+      List<FieldSchema> __this__fields = new ArrayList<FieldSchema>();
+      for (FieldSchema other_element : other.fields) {
+        __this__fields.add(new FieldSchema(other_element));
+      }
+      this.fields = __this__fields;
+    }
+    if (other.isSetCluster()) {
+      this.cluster = other.cluster;
+    }
+  }
+
+  public TableSchema deepCopy() {
+    return new TableSchema(this);
+  }
+
+  @Override
+  public void clear() {
+    this.fields = null;
+    this.cluster = null;
+  }
+
+  public int getFieldsSize() {
+    return (this.fields == null) ? 0 : this.fields.size();
+  }
+
+  public java.util.Iterator<FieldSchema> getFieldsIterator() {
+    return (this.fields == null) ? null : this.fields.iterator();
+  }
+
+  public void addToFields(FieldSchema elem) {
+    if (this.fields == null) {
+      this.fields = new ArrayList<FieldSchema>();
+    }
+    this.fields.add(elem);
+  }
+
+  /**
+   * List of field information for a table.
+   */
+  public List<FieldSchema> getFields() {
+    return this.fields;
+  }
+
+  /**
+   * List of field information for a table.
+   */
+  public TableSchema setFields(List<FieldSchema> fields) {
+    this.fields = fields;
+    return this;
+  }
+
+  public void unsetFields() {
+    this.fields = null;
+  }
+
+  /** Returns true if field fields is set (has been assigned a value) and false otherwise */
+  public boolean isSetFields() {
+    return this.fields != null;
+  }
+
+  public void setFieldsIsSet(boolean value) {
+    if (!value) {
+      this.fields = null;
+    }
+  }
+
+  /**
+   * The cluster name in which this table exists.
+   */
+  public String getCluster() {
+    return this.cluster;
+  }
+
+  /**
+   * The cluster name in which this table exists.
+   */
+  public TableSchema setCluster(String cluster) {
+    this.cluster = cluster;
+    return this;
+  }
+
+  public void unsetCluster() {
+    this.cluster = null;
+  }
+
+  /** Returns true if field cluster is set (has been assigned a value) and false otherwise */
+  public boolean isSetCluster() {
+    return this.cluster != null;
+  }
+
+  public void setClusterIsSet(boolean value) {
+    if (!value) {
+      this.cluster = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case FIELDS:
+      if (value == null) {
+        unsetFields();
+      } else {
+        setFields((List<FieldSchema>)value);
+      }
+      break;
+
+    case CLUSTER:
+      if (value == null) {
+        unsetCluster();
+      } else {
+        setCluster((String)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case FIELDS:
+      return getFields();
+
+    case CLUSTER:
+      return getCluster();
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case FIELDS:
+      return isSetFields();
+    case CLUSTER:
+      return isSetCluster();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof TableSchema)
+      return this.equals((TableSchema)that);
+    return false;
+  }
+
+  public boolean equals(TableSchema that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_fields = true && this.isSetFields();
+    boolean that_present_fields = true && that.isSetFields();
+    if (this_present_fields || that_present_fields) {
+      if (!(this_present_fields && that_present_fields))
+        return false;
+      if (!this.fields.equals(that.fields))
+        return false;
+    }
+
+    boolean this_present_cluster = true && this.isSetCluster();
+    boolean that_present_cluster = true && that.isSetCluster();
+    if (this_present_cluster || that_present_cluster) {
+      if (!(this_present_cluster && that_present_cluster))
+        return false;
+      if (!this.cluster.equals(that.cluster))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(TableSchema other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    TableSchema typedOther = (TableSchema)other;
+
+    lastComparison = Boolean.valueOf(isSetFields()).compareTo(typedOther.isSetFields());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetFields()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.fields, typedOther.fields);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetCluster()).compareTo(typedOther.isSetCluster());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetCluster()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cluster, typedOther.cluster);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("TableSchema(");
+    boolean first = true;
+
+    sb.append("fields:");
+    if (this.fields == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.fields);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("cluster:");
+    if (this.cluster == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.cluster);
+    }
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class TableSchemaStandardSchemeFactory implements SchemeFactory {
+    public TableSchemaStandardScheme getScheme() {
+      return new TableSchemaStandardScheme();
+    }
+  }
+
+  private static class TableSchemaStandardScheme extends StandardScheme<TableSchema> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, TableSchema struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // FIELDS
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
+                struct.fields = new ArrayList<FieldSchema>(_list0.size);
+                for (int _i1 = 0; _i1 < _list0.size; ++_i1)
+                {
+                  FieldSchema _elem2; // required
+                  _elem2 = new FieldSchema();
+                  _elem2.read(iprot);
+                  struct.fields.add(_elem2);
+                }
+                iprot.readListEnd();
+              }
+              struct.setFieldsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // CLUSTER
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.cluster = iprot.readString();
+              struct.setClusterIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, TableSchema struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.fields != null) {
+        oprot.writeFieldBegin(FIELDS_FIELD_DESC);
+        {
+          oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.fields.size()));
+          for (FieldSchema _iter3 : struct.fields)
+          {
+            _iter3.write(oprot);
+          }
+          oprot.writeListEnd();
+        }
+        oprot.writeFieldEnd();
+      }
+      if (struct.cluster != null) {
+        oprot.writeFieldBegin(CLUSTER_FIELD_DESC);
+        oprot.writeString(struct.cluster);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class TableSchemaTupleSchemeFactory implements SchemeFactory {
+    public TableSchemaTupleScheme getScheme() {
+      return new TableSchemaTupleScheme();
+    }
+  }
+
+  private static class TableSchemaTupleScheme extends TupleScheme<TableSchema> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, TableSchema struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetFields()) {
+        optionals.set(0);
+      }
+      if (struct.isSetCluster()) {
+        optionals.set(1);
+      }
+      oprot.writeBitSet(optionals, 2);
+      if (struct.isSetFields()) {
+        {
+          oprot.writeI32(struct.fields.size());
+          for (FieldSchema _iter4 : struct.fields)
+          {
+            _iter4.write(oprot);
+          }
+        }
+      }
+      if (struct.isSetCluster()) {
+        oprot.writeString(struct.cluster);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, TableSchema struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(2);
+      if (incoming.get(0)) {
+        {
+          org.apache.thrift.protocol.TList _list5 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.fields = new ArrayList<FieldSchema>(_list5.size);
+          for (int _i6 = 0; _i6 < _list5.size; ++_i6)
+          {
+            FieldSchema _elem7; // required
+            _elem7 = new FieldSchema();
+            _elem7.read(iprot);
+            struct.fields.add(_elem7);
+          }
+        }
+        struct.setFieldsIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.cluster = iprot.readString();
+        struct.setClusterIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/11f5141c/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableStats.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableStats.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableStats.java
new file mode 100644
index 0000000..d21538a
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TableStats.java
@@ -0,0 +1,630 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.blur.thrift.generated;
+
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * 
+ */
+public class TableStats implements org.apache.thrift.TBase<TableStats, TableStats._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TableStats");
+
+  private static final org.apache.thrift.protocol.TField BYTES_FIELD_DESC = new org.apache.thrift.protocol.TField("bytes", org.apache.thrift.protocol.TType.I64, (short)1);
+  private static final org.apache.thrift.protocol.TField DOCUMENT_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("documentCount", org.apache.thrift.protocol.TType.I64, (short)2);
+  private static final org.apache.thrift.protocol.TField QUERIES_FIELD_DESC = new org.apache.thrift.protocol.TField("queries", org.apache.thrift.protocol.TType.I64, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new TableStatsStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new TableStatsTupleSchemeFactory());
+  }
+
+  /**
+   * 
+   */
+  public long bytes; // required
+  /**
+   * 
+   */
+  public long documentCount; // required
+  /**
+   * 
+   */
+  public long queries; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * 
+     */
+    BYTES((short)1, "bytes"),
+    /**
+     * 
+     */
+    DOCUMENT_COUNT((short)2, "documentCount"),
+    /**
+     * 
+     */
+    QUERIES((short)3, "queries");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // BYTES
+          return BYTES;
+        case 2: // DOCUMENT_COUNT
+          return DOCUMENT_COUNT;
+        case 3: // QUERIES
+          return QUERIES;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  private static final int __BYTES_ISSET_ID = 0;
+  private static final int __DOCUMENTCOUNT_ISSET_ID = 1;
+  private static final int __QUERIES_ISSET_ID = 2;
+  private byte __isset_bitfield = 0;
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.BYTES, new org.apache.thrift.meta_data.FieldMetaData("bytes", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
+    tmpMap.put(_Fields.DOCUMENT_COUNT, new org.apache.thrift.meta_data.FieldMetaData("documentCount", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
+    tmpMap.put(_Fields.QUERIES, new org.apache.thrift.meta_data.FieldMetaData("queries", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TableStats.class, metaDataMap);
+  }
+
+  public TableStats() {
+  }
+
+  public TableStats(
+    long bytes,
+    long documentCount,
+    long queries)
+  {
+    this();
+    this.bytes = bytes;
+    setBytesIsSet(true);
+    this.documentCount = documentCount;
+    setDocumentCountIsSet(true);
+    this.queries = queries;
+    setQueriesIsSet(true);
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public TableStats(TableStats other) {
+    __isset_bitfield = other.__isset_bitfield;
+    this.bytes = other.bytes;
+    this.documentCount = other.documentCount;
+    this.queries = other.queries;
+  }
+
+  public TableStats deepCopy() {
+    return new TableStats(this);
+  }
+
+  @Override
+  public void clear() {
+    setBytesIsSet(false);
+    this.bytes = 0;
+    setDocumentCountIsSet(false);
+    this.documentCount = 0;
+    setQueriesIsSet(false);
+    this.queries = 0;
+  }
+
+  /**
+   * 
+   */
+  public long getBytes() {
+    return this.bytes;
+  }
+
+  /**
+   * 
+   */
+  public TableStats setBytes(long bytes) {
+    this.bytes = bytes;
+    setBytesIsSet(true);
+    return this;
+  }
+
+  public void unsetBytes() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __BYTES_ISSET_ID);
+  }
+
+  /** Returns true if field bytes is set (has been assigned a value) and false otherwise */
+  public boolean isSetBytes() {
+    return EncodingUtils.testBit(__isset_bitfield, __BYTES_ISSET_ID);
+  }
+
+  public void setBytesIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __BYTES_ISSET_ID, value);
+  }
+
+  /**
+   * 
+   */
+  public long getDocumentCount() {
+    return this.documentCount;
+  }
+
+  /**
+   * 
+   */
+  public TableStats setDocumentCount(long documentCount) {
+    this.documentCount = documentCount;
+    setDocumentCountIsSet(true);
+    return this;
+  }
+
+  public void unsetDocumentCount() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __DOCUMENTCOUNT_ISSET_ID);
+  }
+
+  /** Returns true if field documentCount is set (has been assigned a value) and false otherwise */
+  public boolean isSetDocumentCount() {
+    return EncodingUtils.testBit(__isset_bitfield, __DOCUMENTCOUNT_ISSET_ID);
+  }
+
+  public void setDocumentCountIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __DOCUMENTCOUNT_ISSET_ID, value);
+  }
+
+  /**
+   * 
+   */
+  public long getQueries() {
+    return this.queries;
+  }
+
+  /**
+   * 
+   */
+  public TableStats setQueries(long queries) {
+    this.queries = queries;
+    setQueriesIsSet(true);
+    return this;
+  }
+
+  public void unsetQueries() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __QUERIES_ISSET_ID);
+  }
+
+  /** Returns true if field queries is set (has been assigned a value) and false otherwise */
+  public boolean isSetQueries() {
+    return EncodingUtils.testBit(__isset_bitfield, __QUERIES_ISSET_ID);
+  }
+
+  public void setQueriesIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __QUERIES_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case BYTES:
+      if (value == null) {
+        unsetBytes();
+      } else {
+        setBytes((Long)value);
+      }
+      break;
+
+    case DOCUMENT_COUNT:
+      if (value == null) {
+        unsetDocumentCount();
+      } else {
+        setDocumentCount((Long)value);
+      }
+      break;
+
+    case QUERIES:
+      if (value == null) {
+        unsetQueries();
+      } else {
+        setQueries((Long)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case BYTES:
+      return Long.valueOf(getBytes());
+
+    case DOCUMENT_COUNT:
+      return Long.valueOf(getDocumentCount());
+
+    case QUERIES:
+      return Long.valueOf(getQueries());
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case BYTES:
+      return isSetBytes();
+    case DOCUMENT_COUNT:
+      return isSetDocumentCount();
+    case QUERIES:
+      return isSetQueries();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof TableStats)
+      return this.equals((TableStats)that);
+    return false;
+  }
+
+  public boolean equals(TableStats that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_bytes = true;
+    boolean that_present_bytes = true;
+    if (this_present_bytes || that_present_bytes) {
+      if (!(this_present_bytes && that_present_bytes))
+        return false;
+      if (this.bytes != that.bytes)
+        return false;
+    }
+
+    boolean this_present_documentCount = true;
+    boolean that_present_documentCount = true;
+    if (this_present_documentCount || that_present_documentCount) {
+      if (!(this_present_documentCount && that_present_documentCount))
+        return false;
+      if (this.documentCount != that.documentCount)
+        return false;
+    }
+
+    boolean this_present_queries = true;
+    boolean that_present_queries = true;
+    if (this_present_queries || that_present_queries) {
+      if (!(this_present_queries && that_present_queries))
+        return false;
+      if (this.queries != that.queries)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(TableStats other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    TableStats typedOther = (TableStats)other;
+
+    lastComparison = Boolean.valueOf(isSetBytes()).compareTo(typedOther.isSetBytes());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetBytes()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.bytes, typedOther.bytes);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetDocumentCount()).compareTo(typedOther.isSetDocumentCount());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetDocumentCount()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.documentCount, typedOther.documentCount);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetQueries()).compareTo(typedOther.isSetQueries());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetQueries()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queries, typedOther.queries);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("TableStats(");
+    boolean first = true;
+
+    sb.append("bytes:");
+    sb.append(this.bytes);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("documentCount:");
+    sb.append(this.documentCount);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("queries:");
+    sb.append(this.queries);
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class TableStatsStandardSchemeFactory implements SchemeFactory {
+    public TableStatsStandardScheme getScheme() {
+      return new TableStatsStandardScheme();
+    }
+  }
+
+  private static class TableStatsStandardScheme extends StandardScheme<TableStats> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, TableStats struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // BYTES
+            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
+              struct.bytes = iprot.readI64();
+              struct.setBytesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // DOCUMENT_COUNT
+            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
+              struct.documentCount = iprot.readI64();
+              struct.setDocumentCountIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // QUERIES
+            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
+              struct.queries = iprot.readI64();
+              struct.setQueriesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, TableStats struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      oprot.writeFieldBegin(BYTES_FIELD_DESC);
+      oprot.writeI64(struct.bytes);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(DOCUMENT_COUNT_FIELD_DESC);
+      oprot.writeI64(struct.documentCount);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(QUERIES_FIELD_DESC);
+      oprot.writeI64(struct.queries);
+      oprot.writeFieldEnd();
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class TableStatsTupleSchemeFactory implements SchemeFactory {
+    public TableStatsTupleScheme getScheme() {
+      return new TableStatsTupleScheme();
+    }
+  }
+
+  private static class TableStatsTupleScheme extends TupleScheme<TableStats> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, TableStats struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetBytes()) {
+        optionals.set(0);
+      }
+      if (struct.isSetDocumentCount()) {
+        optionals.set(1);
+      }
+      if (struct.isSetQueries()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetBytes()) {
+        oprot.writeI64(struct.bytes);
+      }
+      if (struct.isSetDocumentCount()) {
+        oprot.writeI64(struct.documentCount);
+      }
+      if (struct.isSetQueries()) {
+        oprot.writeI64(struct.queries);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, TableStats struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.bytes = iprot.readI64();
+        struct.setBytesIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.documentCount = iprot.readI64();
+        struct.setDocumentCountIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.queries = iprot.readI64();
+        struct.setQueriesIsSet(true);
+      }
+    }
+  }
+
+}
+


Mime
View raw message