incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [6/29] Added the distribution project to allow for automatically creating build artifacts during a maven build.
Date Fri, 04 Jan 2013 22:42:52 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortField.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortField.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortField.java
new file mode 100644
index 0000000..3198d21
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortField.java
@@ -0,0 +1,619 @@
+/**
+ * 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 SortField implements org.apache.thrift.TBase<SortField, SortField._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("SortField");
+
+  private static final org.apache.thrift.protocol.TField FIELD_FIELD_DESC = new org.apache.thrift.protocol.TField("field", org.apache.thrift.protocol.TType.STRING, (short)1);
+  private static final org.apache.thrift.protocol.TField TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("type", org.apache.thrift.protocol.TType.I32, (short)2);
+  private static final org.apache.thrift.protocol.TField REVERSE_FIELD_DESC = new org.apache.thrift.protocol.TField("reverse", org.apache.thrift.protocol.TType.BOOL, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new SortFieldStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new SortFieldTupleSchemeFactory());
+  }
+
+  public String field; // required
+  /**
+   * 
+   * @see SortType
+   */
+  public SortType type; // required
+  public boolean reverse; // 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 {
+    FIELD((short)1, "field"),
+    /**
+     * 
+     * @see SortType
+     */
+    TYPE((short)2, "type"),
+    REVERSE((short)3, "reverse");
+
+    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: // FIELD
+          return FIELD;
+        case 2: // TYPE
+          return TYPE;
+        case 3: // REVERSE
+          return REVERSE;
+        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 __REVERSE_ISSET_ID = 0;
+  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.FIELD, new org.apache.thrift.meta_data.FieldMetaData("field", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.TYPE, new org.apache.thrift.meta_data.FieldMetaData("type", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, SortType.class)));
+    tmpMap.put(_Fields.REVERSE, new org.apache.thrift.meta_data.FieldMetaData("reverse", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(SortField.class, metaDataMap);
+  }
+
+  public SortField() {
+  }
+
+  public SortField(
+    String field,
+    SortType type,
+    boolean reverse)
+  {
+    this();
+    this.field = field;
+    this.type = type;
+    this.reverse = reverse;
+    setReverseIsSet(true);
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public SortField(SortField other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetField()) {
+      this.field = other.field;
+    }
+    if (other.isSetType()) {
+      this.type = other.type;
+    }
+    this.reverse = other.reverse;
+  }
+
+  public SortField deepCopy() {
+    return new SortField(this);
+  }
+
+  @Override
+  public void clear() {
+    this.field = null;
+    this.type = null;
+    setReverseIsSet(false);
+    this.reverse = false;
+  }
+
+  public String getField() {
+    return this.field;
+  }
+
+  public SortField setField(String field) {
+    this.field = field;
+    return this;
+  }
+
+  public void unsetField() {
+    this.field = null;
+  }
+
+  /** Returns true if field field is set (has been assigned a value) and false otherwise */
+  public boolean isSetField() {
+    return this.field != null;
+  }
+
+  public void setFieldIsSet(boolean value) {
+    if (!value) {
+      this.field = null;
+    }
+  }
+
+  /**
+   * 
+   * @see SortType
+   */
+  public SortType getType() {
+    return this.type;
+  }
+
+  /**
+   * 
+   * @see SortType
+   */
+  public SortField setType(SortType type) {
+    this.type = type;
+    return this;
+  }
+
+  public void unsetType() {
+    this.type = null;
+  }
+
+  /** Returns true if field type is set (has been assigned a value) and false otherwise */
+  public boolean isSetType() {
+    return this.type != null;
+  }
+
+  public void setTypeIsSet(boolean value) {
+    if (!value) {
+      this.type = null;
+    }
+  }
+
+  public boolean isReverse() {
+    return this.reverse;
+  }
+
+  public SortField setReverse(boolean reverse) {
+    this.reverse = reverse;
+    setReverseIsSet(true);
+    return this;
+  }
+
+  public void unsetReverse() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __REVERSE_ISSET_ID);
+  }
+
+  /** Returns true if field reverse is set (has been assigned a value) and false otherwise */
+  public boolean isSetReverse() {
+    return EncodingUtils.testBit(__isset_bitfield, __REVERSE_ISSET_ID);
+  }
+
+  public void setReverseIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __REVERSE_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case FIELD:
+      if (value == null) {
+        unsetField();
+      } else {
+        setField((String)value);
+      }
+      break;
+
+    case TYPE:
+      if (value == null) {
+        unsetType();
+      } else {
+        setType((SortType)value);
+      }
+      break;
+
+    case REVERSE:
+      if (value == null) {
+        unsetReverse();
+      } else {
+        setReverse((Boolean)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case FIELD:
+      return getField();
+
+    case TYPE:
+      return getType();
+
+    case REVERSE:
+      return Boolean.valueOf(isReverse());
+
+    }
+    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 FIELD:
+      return isSetField();
+    case TYPE:
+      return isSetType();
+    case REVERSE:
+      return isSetReverse();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof SortField)
+      return this.equals((SortField)that);
+    return false;
+  }
+
+  public boolean equals(SortField that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_field = true && this.isSetField();
+    boolean that_present_field = true && that.isSetField();
+    if (this_present_field || that_present_field) {
+      if (!(this_present_field && that_present_field))
+        return false;
+      if (!this.field.equals(that.field))
+        return false;
+    }
+
+    boolean this_present_type = true && this.isSetType();
+    boolean that_present_type = true && that.isSetType();
+    if (this_present_type || that_present_type) {
+      if (!(this_present_type && that_present_type))
+        return false;
+      if (!this.type.equals(that.type))
+        return false;
+    }
+
+    boolean this_present_reverse = true;
+    boolean that_present_reverse = true;
+    if (this_present_reverse || that_present_reverse) {
+      if (!(this_present_reverse && that_present_reverse))
+        return false;
+      if (this.reverse != that.reverse)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(SortField other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    SortField typedOther = (SortField)other;
+
+    lastComparison = Boolean.valueOf(isSetField()).compareTo(typedOther.isSetField());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetField()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.field, typedOther.field);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetType()).compareTo(typedOther.isSetType());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetType()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.type, typedOther.type);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetReverse()).compareTo(typedOther.isSetReverse());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetReverse()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.reverse, typedOther.reverse);
+      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("SortField(");
+    boolean first = true;
+
+    sb.append("field:");
+    if (this.field == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.field);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("type:");
+    if (this.type == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.type);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("reverse:");
+    sb.append(this.reverse);
+    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 SortFieldStandardSchemeFactory implements SchemeFactory {
+    public SortFieldStandardScheme getScheme() {
+      return new SortFieldStandardScheme();
+    }
+  }
+
+  private static class SortFieldStandardScheme extends StandardScheme<SortField> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, SortField 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: // FIELD
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.field = iprot.readString();
+              struct.setFieldIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.type = SortType.findByValue(iprot.readI32());
+              struct.setTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // REVERSE
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.reverse = iprot.readBool();
+              struct.setReverseIsSet(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, SortField struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.field != null) {
+        oprot.writeFieldBegin(FIELD_FIELD_DESC);
+        oprot.writeString(struct.field);
+        oprot.writeFieldEnd();
+      }
+      if (struct.type != null) {
+        oprot.writeFieldBegin(TYPE_FIELD_DESC);
+        oprot.writeI32(struct.type.getValue());
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldBegin(REVERSE_FIELD_DESC);
+      oprot.writeBool(struct.reverse);
+      oprot.writeFieldEnd();
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class SortFieldTupleSchemeFactory implements SchemeFactory {
+    public SortFieldTupleScheme getScheme() {
+      return new SortFieldTupleScheme();
+    }
+  }
+
+  private static class SortFieldTupleScheme extends TupleScheme<SortField> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, SortField struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetField()) {
+        optionals.set(0);
+      }
+      if (struct.isSetType()) {
+        optionals.set(1);
+      }
+      if (struct.isSetReverse()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetField()) {
+        oprot.writeString(struct.field);
+      }
+      if (struct.isSetType()) {
+        oprot.writeI32(struct.type.getValue());
+      }
+      if (struct.isSetReverse()) {
+        oprot.writeBool(struct.reverse);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, SortField struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.field = iprot.readString();
+        struct.setFieldIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.type = SortType.findByValue(iprot.readI32());
+        struct.setTypeIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.reverse = iprot.readBool();
+        struct.setReverseIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortType.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortType.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortType.java
new file mode 100644
index 0000000..991dd14
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/SortType.java
@@ -0,0 +1,125 @@
+/**
+ * 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 java.util.Map;
+import java.util.HashMap;
+import org.apache.thrift.TEnum;
+
+public enum SortType implements org.apache.thrift.TEnum {
+  /**
+   * Sort by document score (relevance).  Sort values are Float and higher values are at the front.
+   */
+  SCORE(0),
+  /**
+   * Sort by document number (index order).  Sort values are Integer and lower values are at the front.
+   */
+  DOC(1),
+  /**
+   * Sort using term values as Strings.  Sort values are String and lower values are at the front.
+   */
+  STRING(2),
+  /**
+   * Sort using term values as encoded Integers.  Sort values are Integer and lower values are at the front.
+   */
+  INT(3),
+  /**
+   * Sort using term values as encoded Floats.  Sort values are Float and lower values are at the front.
+   */
+  FLOAT(4),
+  /**
+   * Sort using term values as encoded Longs.  Sort values are Long and lower values are at the front.
+   */
+  LONG(5),
+  /**
+   * Sort using term values as encoded Doubles.  Sort values are Double and lower values are at the front.
+   */
+  DOUBLE(6),
+  /**
+   * Sort using term values as encoded Shorts.  Sort values are Short and lower values are at the front.
+   */
+  SHORT(7),
+  /**
+   * Sort using term values as encoded Bytes.  Sort values are Byte and lower values are at the front.
+   */
+  BYTE(8),
+  /**
+   * Sort using term values as Strings, but comparing by value (using String.compareTo) for all
+   * comparisons. This is typically slower than {@link #STRING}, which uses ordinals to do the sorting.
+   */
+  STRING_VAL(9),
+  /**
+   * Sort use byte[] index values.
+   */
+  BYTES(10);
+
+  private final int value;
+
+  private SortType(int value) {
+    this.value = value;
+  }
+
+  /**
+   * Get the integer value of this enum value, as defined in the Thrift IDL.
+   */
+  public int getValue() {
+    return value;
+  }
+
+  /**
+   * Find a the enum type by its integer value, as defined in the Thrift IDL.
+   * @return null if the value is not found.
+   */
+  public static SortType findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return SCORE;
+      case 1:
+        return DOC;
+      case 2:
+        return STRING;
+      case 3:
+        return INT;
+      case 4:
+        return FLOAT;
+      case 5:
+        return LONG;
+      case 6:
+        return DOUBLE;
+      case 7:
+        return SHORT;
+      case 8:
+        return BYTE;
+      case 9:
+        return STRING_VAL;
+      case 10:
+        return BYTES;
+      default:
+        return null;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TYPE.java
----------------------------------------------------------------------
diff --git a/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TYPE.java b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TYPE.java
new file mode 100644
index 0000000..e7a3cb5
--- /dev/null
+++ b/src/distribution/src/main/scripts/interface/gen-java/org/apache/blur/thrift/generated/TYPE.java
@@ -0,0 +1,104 @@
+/**
+ * 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 java.util.Map;
+import java.util.HashMap;
+import org.apache.thrift.TEnum;
+
+/**
+ * The fields types.
+ */
+public enum TYPE implements org.apache.thrift.TEnum {
+  /**
+   * This type uses the StandardAnalyzer for indexing and stores the value.
+   */
+  TEXT(0),
+  /**
+   * This type is indexed as a String (Lucene StringField) as provided and stores the value.
+   * NOTE: The String is not tokenized, so the String is indexed as a single value.
+   */
+  STRING(1),
+  /**
+   * This type is indexed as an Integer (Lucene IntegerField) as provided and stores the value.
+   */
+  INT(2),
+  /**
+   * This type is indexed as an Long (Lucene LongField) as provided and stores the value.
+   */
+  LONG(3),
+  /**
+   * This type is indexed as an Float (Lucene FloatField) as provided and stores the value.
+   */
+  FLOAT(4),
+  /**
+   * This type is indexed as an Double (Lucene DoubleField) as provided and stores the value.
+   */
+  DOUBLE(5),
+  /**
+   * This type is NOT indexed but stores the value.
+   */
+  BINARY(6);
+
+  private final int value;
+
+  private TYPE(int value) {
+    this.value = value;
+  }
+
+  /**
+   * Get the integer value of this enum value, as defined in the Thrift IDL.
+   */
+  public int getValue() {
+    return value;
+  }
+
+  /**
+   * Find a the enum type by its integer value, as defined in the Thrift IDL.
+   * @return null if the value is not found.
+   */
+  public static TYPE findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return TEXT;
+      case 1:
+        return STRING;
+      case 2:
+        return INT;
+      case 3:
+        return LONG;
+      case 4:
+        return FLOAT;
+      case 5:
+        return DOUBLE;
+      case 6:
+        return BINARY;
+      default:
+        return null;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/70b69ecb/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..0776df6
--- /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 _map54 = iprot.readMapBegin();
+                struct.properties = new HashMap<String,String>(2*_map54.size);
+                for (int _i55 = 0; _i55 < _map54.size; ++_i55)
+                {
+                  String _key56; // required
+                  String _val57; // optional
+                  _key56 = iprot.readString();
+                  _val57 = iprot.readString();
+                  struct.properties.put(_key56, _val57);
+                }
+                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> _iter58 : struct.properties.entrySet())
+          {
+            oprot.writeString(_iter58.getKey());
+            oprot.writeString(_iter58.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> _iter59 : struct.properties.entrySet())
+          {
+            oprot.writeString(_iter59.getKey());
+            oprot.writeString(_iter59.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 _map60 = 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*_map60.size);
+          for (int _i61 = 0; _i61 < _map60.size; ++_i61)
+          {
+            String _key62; // required
+            String _val63; // optional
+            _key62 = iprot.readString();
+            _val63 = iprot.readString();
+            struct.properties.put(_key62, _val63);
+          }
+        }
+        struct.setPropertiesIsSet(true);
+      }
+    }
+  }
+
+}
+


Mime
View raw message