incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [05/51] [partial] git commit: Changing default jvm version to 1.8. Removing hadoop profiles, will only support hadoop 2 from this point forward. Broke up the distribution project into 4 projects. Source, binary, parcel and csd. Also changed blur's ve
Date Sun, 27 Sep 2015 18:51:55 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/e5ae88af/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchResult.java
----------------------------------------------------------------------
diff --git a/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchResult.java b/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchResult.java
new file mode 100644
index 0000000..7a71e98
--- /dev/null
+++ b/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchResult.java
@@ -0,0 +1,871 @@
+/**
+ * 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.blur.thirdparty.thrift_0_9_0.scheme.IScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.SchemeFactory;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.StandardScheme;
+
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.TupleScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TTupleProtocol;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolException;
+import org.apache.blur.thirdparty.thrift_0_9_0.EncodingUtils;
+import org.apache.blur.thirdparty.thrift_0_9_0.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;
+
+/**
+ * FetchResult contains the row or record fetch result based if the Selector
+ * was going to fetch the entire row or a single record.
+ */
+public class FetchResult implements org.apache.blur.thirdparty.thrift_0_9_0.TBase<FetchResult, FetchResult._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct STRUCT_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct("FetchResult");
+
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField EXISTS_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("exists", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL, (short)1);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField DELETED_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("deleted", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL, (short)2);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField TABLE_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("table", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, (short)3);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField ROW_RESULT_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("rowResult", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, (short)4);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField RECORD_RESULT_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("recordResult", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, (short)5);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new FetchResultStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new FetchResultTupleSchemeFactory());
+  }
+
+  /**
+   * True if the result exists, false if it doesn't.
+   */
+  public boolean exists; // required
+  /**
+   * If the row was marked as deleted.
+   */
+  public boolean deleted; // required
+  /**
+   * The table the fetch result came from.
+   */
+  public String table; // required
+  /**
+   * The row result if a row was selected form the Selector.
+   */
+  public FetchRowResult rowResult; // required
+  /**
+   * The record result if a record was selected form the Selector.
+   */
+  public FetchRecordResult recordResult; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.blur.thirdparty.thrift_0_9_0.TFieldIdEnum {
+    /**
+     * True if the result exists, false if it doesn't.
+     */
+    EXISTS((short)1, "exists"),
+    /**
+     * If the row was marked as deleted.
+     */
+    DELETED((short)2, "deleted"),
+    /**
+     * The table the fetch result came from.
+     */
+    TABLE((short)3, "table"),
+    /**
+     * The row result if a row was selected form the Selector.
+     */
+    ROW_RESULT((short)4, "rowResult"),
+    /**
+     * The record result if a record was selected form the Selector.
+     */
+    RECORD_RESULT((short)5, "recordResult");
+
+    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: // EXISTS
+          return EXISTS;
+        case 2: // DELETED
+          return DELETED;
+        case 3: // TABLE
+          return TABLE;
+        case 4: // ROW_RESULT
+          return ROW_RESULT;
+        case 5: // RECORD_RESULT
+          return RECORD_RESULT;
+        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 __EXISTS_ISSET_ID = 0;
+  private static final int __DELETED_ISSET_ID = 1;
+  private byte __isset_bitfield = 0;
+  public static final Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.EXISTS, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("exists", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL)));
+    tmpMap.put(_Fields.DELETED, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("deleted", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL)));
+    tmpMap.put(_Fields.TABLE, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("table", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING)));
+    tmpMap.put(_Fields.ROW_RESULT, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("rowResult", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, FetchRowResult.class)));
+    tmpMap.put(_Fields.RECORD_RESULT, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("recordResult", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, FetchRecordResult.class)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData.addStructMetaDataMap(FetchResult.class, metaDataMap);
+  }
+
+  public FetchResult() {
+  }
+
+  public FetchResult(
+    boolean exists,
+    boolean deleted,
+    String table,
+    FetchRowResult rowResult,
+    FetchRecordResult recordResult)
+  {
+    this();
+    this.exists = exists;
+    setExistsIsSet(true);
+    this.deleted = deleted;
+    setDeletedIsSet(true);
+    this.table = table;
+    this.rowResult = rowResult;
+    this.recordResult = recordResult;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public FetchResult(FetchResult other) {
+    __isset_bitfield = other.__isset_bitfield;
+    this.exists = other.exists;
+    this.deleted = other.deleted;
+    if (other.isSetTable()) {
+      this.table = other.table;
+    }
+    if (other.isSetRowResult()) {
+      this.rowResult = new FetchRowResult(other.rowResult);
+    }
+    if (other.isSetRecordResult()) {
+      this.recordResult = new FetchRecordResult(other.recordResult);
+    }
+  }
+
+  public FetchResult deepCopy() {
+    return new FetchResult(this);
+  }
+
+  @Override
+  public void clear() {
+    setExistsIsSet(false);
+    this.exists = false;
+    setDeletedIsSet(false);
+    this.deleted = false;
+    this.table = null;
+    this.rowResult = null;
+    this.recordResult = null;
+  }
+
+  /**
+   * True if the result exists, false if it doesn't.
+   */
+  public boolean isExists() {
+    return this.exists;
+  }
+
+  /**
+   * True if the result exists, false if it doesn't.
+   */
+  public FetchResult setExists(boolean exists) {
+    this.exists = exists;
+    setExistsIsSet(true);
+    return this;
+  }
+
+  public void unsetExists() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __EXISTS_ISSET_ID);
+  }
+
+  /** Returns true if field exists is set (has been assigned a value) and false otherwise */
+  public boolean isSetExists() {
+    return EncodingUtils.testBit(__isset_bitfield, __EXISTS_ISSET_ID);
+  }
+
+  public void setExistsIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __EXISTS_ISSET_ID, value);
+  }
+
+  /**
+   * If the row was marked as deleted.
+   */
+  public boolean isDeleted() {
+    return this.deleted;
+  }
+
+  /**
+   * If the row was marked as deleted.
+   */
+  public FetchResult setDeleted(boolean deleted) {
+    this.deleted = deleted;
+    setDeletedIsSet(true);
+    return this;
+  }
+
+  public void unsetDeleted() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __DELETED_ISSET_ID);
+  }
+
+  /** Returns true if field deleted is set (has been assigned a value) and false otherwise */
+  public boolean isSetDeleted() {
+    return EncodingUtils.testBit(__isset_bitfield, __DELETED_ISSET_ID);
+  }
+
+  public void setDeletedIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __DELETED_ISSET_ID, value);
+  }
+
+  /**
+   * The table the fetch result came from.
+   */
+  public String getTable() {
+    return this.table;
+  }
+
+  /**
+   * The table the fetch result came from.
+   */
+  public FetchResult setTable(String table) {
+    this.table = table;
+    return this;
+  }
+
+  public void unsetTable() {
+    this.table = null;
+  }
+
+  /** Returns true if field table is set (has been assigned a value) and false otherwise */
+  public boolean isSetTable() {
+    return this.table != null;
+  }
+
+  public void setTableIsSet(boolean value) {
+    if (!value) {
+      this.table = null;
+    }
+  }
+
+  /**
+   * The row result if a row was selected form the Selector.
+   */
+  public FetchRowResult getRowResult() {
+    return this.rowResult;
+  }
+
+  /**
+   * The row result if a row was selected form the Selector.
+   */
+  public FetchResult setRowResult(FetchRowResult rowResult) {
+    this.rowResult = rowResult;
+    return this;
+  }
+
+  public void unsetRowResult() {
+    this.rowResult = null;
+  }
+
+  /** Returns true if field rowResult is set (has been assigned a value) and false otherwise */
+  public boolean isSetRowResult() {
+    return this.rowResult != null;
+  }
+
+  public void setRowResultIsSet(boolean value) {
+    if (!value) {
+      this.rowResult = null;
+    }
+  }
+
+  /**
+   * The record result if a record was selected form the Selector.
+   */
+  public FetchRecordResult getRecordResult() {
+    return this.recordResult;
+  }
+
+  /**
+   * The record result if a record was selected form the Selector.
+   */
+  public FetchResult setRecordResult(FetchRecordResult recordResult) {
+    this.recordResult = recordResult;
+    return this;
+  }
+
+  public void unsetRecordResult() {
+    this.recordResult = null;
+  }
+
+  /** Returns true if field recordResult is set (has been assigned a value) and false otherwise */
+  public boolean isSetRecordResult() {
+    return this.recordResult != null;
+  }
+
+  public void setRecordResultIsSet(boolean value) {
+    if (!value) {
+      this.recordResult = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case EXISTS:
+      if (value == null) {
+        unsetExists();
+      } else {
+        setExists((Boolean)value);
+      }
+      break;
+
+    case DELETED:
+      if (value == null) {
+        unsetDeleted();
+      } else {
+        setDeleted((Boolean)value);
+      }
+      break;
+
+    case TABLE:
+      if (value == null) {
+        unsetTable();
+      } else {
+        setTable((String)value);
+      }
+      break;
+
+    case ROW_RESULT:
+      if (value == null) {
+        unsetRowResult();
+      } else {
+        setRowResult((FetchRowResult)value);
+      }
+      break;
+
+    case RECORD_RESULT:
+      if (value == null) {
+        unsetRecordResult();
+      } else {
+        setRecordResult((FetchRecordResult)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case EXISTS:
+      return Boolean.valueOf(isExists());
+
+    case DELETED:
+      return Boolean.valueOf(isDeleted());
+
+    case TABLE:
+      return getTable();
+
+    case ROW_RESULT:
+      return getRowResult();
+
+    case RECORD_RESULT:
+      return getRecordResult();
+
+    }
+    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 EXISTS:
+      return isSetExists();
+    case DELETED:
+      return isSetDeleted();
+    case TABLE:
+      return isSetTable();
+    case ROW_RESULT:
+      return isSetRowResult();
+    case RECORD_RESULT:
+      return isSetRecordResult();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof FetchResult)
+      return this.equals((FetchResult)that);
+    return false;
+  }
+
+  public boolean equals(FetchResult that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_exists = true;
+    boolean that_present_exists = true;
+    if (this_present_exists || that_present_exists) {
+      if (!(this_present_exists && that_present_exists))
+        return false;
+      if (this.exists != that.exists)
+        return false;
+    }
+
+    boolean this_present_deleted = true;
+    boolean that_present_deleted = true;
+    if (this_present_deleted || that_present_deleted) {
+      if (!(this_present_deleted && that_present_deleted))
+        return false;
+      if (this.deleted != that.deleted)
+        return false;
+    }
+
+    boolean this_present_table = true && this.isSetTable();
+    boolean that_present_table = true && that.isSetTable();
+    if (this_present_table || that_present_table) {
+      if (!(this_present_table && that_present_table))
+        return false;
+      if (!this.table.equals(that.table))
+        return false;
+    }
+
+    boolean this_present_rowResult = true && this.isSetRowResult();
+    boolean that_present_rowResult = true && that.isSetRowResult();
+    if (this_present_rowResult || that_present_rowResult) {
+      if (!(this_present_rowResult && that_present_rowResult))
+        return false;
+      if (!this.rowResult.equals(that.rowResult))
+        return false;
+    }
+
+    boolean this_present_recordResult = true && this.isSetRecordResult();
+    boolean that_present_recordResult = true && that.isSetRecordResult();
+    if (this_present_recordResult || that_present_recordResult) {
+      if (!(this_present_recordResult && that_present_recordResult))
+        return false;
+      if (!this.recordResult.equals(that.recordResult))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(FetchResult other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    FetchResult typedOther = (FetchResult)other;
+
+    lastComparison = Boolean.valueOf(isSetExists()).compareTo(typedOther.isSetExists());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetExists()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.exists, typedOther.exists);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetDeleted()).compareTo(typedOther.isSetDeleted());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetDeleted()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.deleted, typedOther.deleted);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetTable()).compareTo(typedOther.isSetTable());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetTable()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.table, typedOther.table);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRowResult()).compareTo(typedOther.isSetRowResult());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRowResult()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.rowResult, typedOther.rowResult);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRecordResult()).compareTo(typedOther.isSetRecordResult());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRecordResult()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.recordResult, typedOther.recordResult);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("FetchResult(");
+    boolean first = true;
+
+    sb.append("exists:");
+    sb.append(this.exists);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("deleted:");
+    sb.append(this.deleted);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("table:");
+    if (this.table == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.table);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("rowResult:");
+    if (this.rowResult == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.rowResult);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("recordResult:");
+    if (this.recordResult == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.recordResult);
+    }
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    // check for required fields
+    // check for sub-struct validity
+    if (rowResult != null) {
+      rowResult.validate();
+    }
+    if (recordResult != null) {
+      recordResult.validate();
+    }
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(out)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(in)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class FetchResultStandardSchemeFactory implements SchemeFactory {
+    public FetchResultStandardScheme getScheme() {
+      return new FetchResultStandardScheme();
+    }
+  }
+
+  private static class FetchResultStandardScheme extends StandardScheme<FetchResult> {
+
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot, FetchResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // EXISTS
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL) {
+              struct.exists = iprot.readBool();
+              struct.setExistsIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // DELETED
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL) {
+              struct.deleted = iprot.readBool();
+              struct.setDeletedIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // TABLE
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.table = iprot.readString();
+              struct.setTableIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // ROW_RESULT
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT) {
+              struct.rowResult = new FetchRowResult();
+              struct.rowResult.read(iprot);
+              struct.setRowResultIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // RECORD_RESULT
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT) {
+              struct.recordResult = new FetchRecordResult();
+              struct.recordResult.read(iprot);
+              struct.setRecordResultIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot, FetchResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      oprot.writeFieldBegin(EXISTS_FIELD_DESC);
+      oprot.writeBool(struct.exists);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(DELETED_FIELD_DESC);
+      oprot.writeBool(struct.deleted);
+      oprot.writeFieldEnd();
+      if (struct.table != null) {
+        oprot.writeFieldBegin(TABLE_FIELD_DESC);
+        oprot.writeString(struct.table);
+        oprot.writeFieldEnd();
+      }
+      if (struct.rowResult != null) {
+        oprot.writeFieldBegin(ROW_RESULT_FIELD_DESC);
+        struct.rowResult.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      if (struct.recordResult != null) {
+        oprot.writeFieldBegin(RECORD_RESULT_FIELD_DESC);
+        struct.recordResult.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class FetchResultTupleSchemeFactory implements SchemeFactory {
+    public FetchResultTupleScheme getScheme() {
+      return new FetchResultTupleScheme();
+    }
+  }
+
+  private static class FetchResultTupleScheme extends TupleScheme<FetchResult> {
+
+    @Override
+    public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, FetchResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetExists()) {
+        optionals.set(0);
+      }
+      if (struct.isSetDeleted()) {
+        optionals.set(1);
+      }
+      if (struct.isSetTable()) {
+        optionals.set(2);
+      }
+      if (struct.isSetRowResult()) {
+        optionals.set(3);
+      }
+      if (struct.isSetRecordResult()) {
+        optionals.set(4);
+      }
+      oprot.writeBitSet(optionals, 5);
+      if (struct.isSetExists()) {
+        oprot.writeBool(struct.exists);
+      }
+      if (struct.isSetDeleted()) {
+        oprot.writeBool(struct.deleted);
+      }
+      if (struct.isSetTable()) {
+        oprot.writeString(struct.table);
+      }
+      if (struct.isSetRowResult()) {
+        struct.rowResult.write(oprot);
+      }
+      if (struct.isSetRecordResult()) {
+        struct.recordResult.write(oprot);
+      }
+    }
+
+    @Override
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, FetchResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(5);
+      if (incoming.get(0)) {
+        struct.exists = iprot.readBool();
+        struct.setExistsIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.deleted = iprot.readBool();
+        struct.setDeletedIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.table = iprot.readString();
+        struct.setTableIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.rowResult = new FetchRowResult();
+        struct.rowResult.read(iprot);
+        struct.setRowResultIsSet(true);
+      }
+      if (incoming.get(4)) {
+        struct.recordResult = new FetchRecordResult();
+        struct.recordResult.read(iprot);
+        struct.setRecordResultIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/e5ae88af/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchRowResult.java
----------------------------------------------------------------------
diff --git a/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchRowResult.java b/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchRowResult.java
new file mode 100644
index 0000000..9f6403f
--- /dev/null
+++ b/scripts/interface/gen-java/org/apache/blur/thrift/generated/FetchRowResult.java
@@ -0,0 +1,859 @@
+/**
+ * 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.blur.thirdparty.thrift_0_9_0.scheme.IScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.SchemeFactory;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.StandardScheme;
+
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.TupleScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TTupleProtocol;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolException;
+import org.apache.blur.thirdparty.thrift_0_9_0.EncodingUtils;
+import org.apache.blur.thirdparty.thrift_0_9_0.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;
+
+/**
+ * FetchRowResult contains row result from a fetch.
+ */
+public class FetchRowResult implements org.apache.blur.thirdparty.thrift_0_9_0.TBase<FetchRowResult, FetchRowResult._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct STRUCT_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct("FetchRowResult");
+
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField ROW_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("row", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, (short)1);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField START_RECORD_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("startRecord", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, (short)2);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField MAX_RECORDS_TO_FETCH_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("maxRecordsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, (short)3);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField MORE_RECORDS_TO_FETCH_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("moreRecordsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL, (short)4);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField TOTAL_RECORDS_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("totalRecords", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32, (short)5);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new FetchRowResultStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new FetchRowResultTupleSchemeFactory());
+  }
+
+  /**
+   * The row fetched.
+   */
+  public Row row; // required
+  /**
+   * See Selector startRecord.
+   */
+  public int startRecord; // required
+  /**
+   * See Selector maxRecordsToFetch.
+   */
+  public int maxRecordsToFetch; // required
+  /**
+   * Are there more Records to fetch based on the Selector provided.
+   */
+  public boolean moreRecordsToFetch; // required
+  /**
+   * The total number of records the Selector found.
+   */
+  public int totalRecords; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.blur.thirdparty.thrift_0_9_0.TFieldIdEnum {
+    /**
+     * The row fetched.
+     */
+    ROW((short)1, "row"),
+    /**
+     * See Selector startRecord.
+     */
+    START_RECORD((short)2, "startRecord"),
+    /**
+     * See Selector maxRecordsToFetch.
+     */
+    MAX_RECORDS_TO_FETCH((short)3, "maxRecordsToFetch"),
+    /**
+     * Are there more Records to fetch based on the Selector provided.
+     */
+    MORE_RECORDS_TO_FETCH((short)4, "moreRecordsToFetch"),
+    /**
+     * The total number of records the Selector found.
+     */
+    TOTAL_RECORDS((short)5, "totalRecords");
+
+    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: // ROW
+          return ROW;
+        case 2: // START_RECORD
+          return START_RECORD;
+        case 3: // MAX_RECORDS_TO_FETCH
+          return MAX_RECORDS_TO_FETCH;
+        case 4: // MORE_RECORDS_TO_FETCH
+          return MORE_RECORDS_TO_FETCH;
+        case 5: // TOTAL_RECORDS
+          return TOTAL_RECORDS;
+        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 __STARTRECORD_ISSET_ID = 0;
+  private static final int __MAXRECORDSTOFETCH_ISSET_ID = 1;
+  private static final int __MORERECORDSTOFETCH_ISSET_ID = 2;
+  private static final int __TOTALRECORDS_ISSET_ID = 3;
+  private byte __isset_bitfield = 0;
+  public static final Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.ROW, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("row", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, Row.class)));
+    tmpMap.put(_Fields.START_RECORD, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("startRecord", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32)));
+    tmpMap.put(_Fields.MAX_RECORDS_TO_FETCH, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("maxRecordsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32)));
+    tmpMap.put(_Fields.MORE_RECORDS_TO_FETCH, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("moreRecordsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL)));
+    tmpMap.put(_Fields.TOTAL_RECORDS, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("totalRecords", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData.addStructMetaDataMap(FetchRowResult.class, metaDataMap);
+  }
+
+  public FetchRowResult() {
+    this.startRecord = -1;
+
+    this.maxRecordsToFetch = -1;
+
+    this.moreRecordsToFetch = false;
+
+  }
+
+  public FetchRowResult(
+    Row row,
+    int startRecord,
+    int maxRecordsToFetch,
+    boolean moreRecordsToFetch,
+    int totalRecords)
+  {
+    this();
+    this.row = row;
+    this.startRecord = startRecord;
+    setStartRecordIsSet(true);
+    this.maxRecordsToFetch = maxRecordsToFetch;
+    setMaxRecordsToFetchIsSet(true);
+    this.moreRecordsToFetch = moreRecordsToFetch;
+    setMoreRecordsToFetchIsSet(true);
+    this.totalRecords = totalRecords;
+    setTotalRecordsIsSet(true);
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public FetchRowResult(FetchRowResult other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetRow()) {
+      this.row = new Row(other.row);
+    }
+    this.startRecord = other.startRecord;
+    this.maxRecordsToFetch = other.maxRecordsToFetch;
+    this.moreRecordsToFetch = other.moreRecordsToFetch;
+    this.totalRecords = other.totalRecords;
+  }
+
+  public FetchRowResult deepCopy() {
+    return new FetchRowResult(this);
+  }
+
+  @Override
+  public void clear() {
+    this.row = null;
+    this.startRecord = -1;
+
+    this.maxRecordsToFetch = -1;
+
+    this.moreRecordsToFetch = false;
+
+    setTotalRecordsIsSet(false);
+    this.totalRecords = 0;
+  }
+
+  /**
+   * The row fetched.
+   */
+  public Row getRow() {
+    return this.row;
+  }
+
+  /**
+   * The row fetched.
+   */
+  public FetchRowResult setRow(Row row) {
+    this.row = row;
+    return this;
+  }
+
+  public void unsetRow() {
+    this.row = null;
+  }
+
+  /** Returns true if field row is set (has been assigned a value) and false otherwise */
+  public boolean isSetRow() {
+    return this.row != null;
+  }
+
+  public void setRowIsSet(boolean value) {
+    if (!value) {
+      this.row = null;
+    }
+  }
+
+  /**
+   * See Selector startRecord.
+   */
+  public int getStartRecord() {
+    return this.startRecord;
+  }
+
+  /**
+   * See Selector startRecord.
+   */
+  public FetchRowResult setStartRecord(int startRecord) {
+    this.startRecord = startRecord;
+    setStartRecordIsSet(true);
+    return this;
+  }
+
+  public void unsetStartRecord() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __STARTRECORD_ISSET_ID);
+  }
+
+  /** Returns true if field startRecord is set (has been assigned a value) and false otherwise */
+  public boolean isSetStartRecord() {
+    return EncodingUtils.testBit(__isset_bitfield, __STARTRECORD_ISSET_ID);
+  }
+
+  public void setStartRecordIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __STARTRECORD_ISSET_ID, value);
+  }
+
+  /**
+   * See Selector maxRecordsToFetch.
+   */
+  public int getMaxRecordsToFetch() {
+    return this.maxRecordsToFetch;
+  }
+
+  /**
+   * See Selector maxRecordsToFetch.
+   */
+  public FetchRowResult setMaxRecordsToFetch(int maxRecordsToFetch) {
+    this.maxRecordsToFetch = maxRecordsToFetch;
+    setMaxRecordsToFetchIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxRecordsToFetch() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXRECORDSTOFETCH_ISSET_ID);
+  }
+
+  /** Returns true if field maxRecordsToFetch is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxRecordsToFetch() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXRECORDSTOFETCH_ISSET_ID);
+  }
+
+  public void setMaxRecordsToFetchIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXRECORDSTOFETCH_ISSET_ID, value);
+  }
+
+  /**
+   * Are there more Records to fetch based on the Selector provided.
+   */
+  public boolean isMoreRecordsToFetch() {
+    return this.moreRecordsToFetch;
+  }
+
+  /**
+   * Are there more Records to fetch based on the Selector provided.
+   */
+  public FetchRowResult setMoreRecordsToFetch(boolean moreRecordsToFetch) {
+    this.moreRecordsToFetch = moreRecordsToFetch;
+    setMoreRecordsToFetchIsSet(true);
+    return this;
+  }
+
+  public void unsetMoreRecordsToFetch() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MORERECORDSTOFETCH_ISSET_ID);
+  }
+
+  /** Returns true if field moreRecordsToFetch is set (has been assigned a value) and false otherwise */
+  public boolean isSetMoreRecordsToFetch() {
+    return EncodingUtils.testBit(__isset_bitfield, __MORERECORDSTOFETCH_ISSET_ID);
+  }
+
+  public void setMoreRecordsToFetchIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MORERECORDSTOFETCH_ISSET_ID, value);
+  }
+
+  /**
+   * The total number of records the Selector found.
+   */
+  public int getTotalRecords() {
+    return this.totalRecords;
+  }
+
+  /**
+   * The total number of records the Selector found.
+   */
+  public FetchRowResult setTotalRecords(int totalRecords) {
+    this.totalRecords = totalRecords;
+    setTotalRecordsIsSet(true);
+    return this;
+  }
+
+  public void unsetTotalRecords() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TOTALRECORDS_ISSET_ID);
+  }
+
+  /** Returns true if field totalRecords is set (has been assigned a value) and false otherwise */
+  public boolean isSetTotalRecords() {
+    return EncodingUtils.testBit(__isset_bitfield, __TOTALRECORDS_ISSET_ID);
+  }
+
+  public void setTotalRecordsIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TOTALRECORDS_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case ROW:
+      if (value == null) {
+        unsetRow();
+      } else {
+        setRow((Row)value);
+      }
+      break;
+
+    case START_RECORD:
+      if (value == null) {
+        unsetStartRecord();
+      } else {
+        setStartRecord((Integer)value);
+      }
+      break;
+
+    case MAX_RECORDS_TO_FETCH:
+      if (value == null) {
+        unsetMaxRecordsToFetch();
+      } else {
+        setMaxRecordsToFetch((Integer)value);
+      }
+      break;
+
+    case MORE_RECORDS_TO_FETCH:
+      if (value == null) {
+        unsetMoreRecordsToFetch();
+      } else {
+        setMoreRecordsToFetch((Boolean)value);
+      }
+      break;
+
+    case TOTAL_RECORDS:
+      if (value == null) {
+        unsetTotalRecords();
+      } else {
+        setTotalRecords((Integer)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case ROW:
+      return getRow();
+
+    case START_RECORD:
+      return Integer.valueOf(getStartRecord());
+
+    case MAX_RECORDS_TO_FETCH:
+      return Integer.valueOf(getMaxRecordsToFetch());
+
+    case MORE_RECORDS_TO_FETCH:
+      return Boolean.valueOf(isMoreRecordsToFetch());
+
+    case TOTAL_RECORDS:
+      return Integer.valueOf(getTotalRecords());
+
+    }
+    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 ROW:
+      return isSetRow();
+    case START_RECORD:
+      return isSetStartRecord();
+    case MAX_RECORDS_TO_FETCH:
+      return isSetMaxRecordsToFetch();
+    case MORE_RECORDS_TO_FETCH:
+      return isSetMoreRecordsToFetch();
+    case TOTAL_RECORDS:
+      return isSetTotalRecords();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof FetchRowResult)
+      return this.equals((FetchRowResult)that);
+    return false;
+  }
+
+  public boolean equals(FetchRowResult that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_row = true && this.isSetRow();
+    boolean that_present_row = true && that.isSetRow();
+    if (this_present_row || that_present_row) {
+      if (!(this_present_row && that_present_row))
+        return false;
+      if (!this.row.equals(that.row))
+        return false;
+    }
+
+    boolean this_present_startRecord = true;
+    boolean that_present_startRecord = true;
+    if (this_present_startRecord || that_present_startRecord) {
+      if (!(this_present_startRecord && that_present_startRecord))
+        return false;
+      if (this.startRecord != that.startRecord)
+        return false;
+    }
+
+    boolean this_present_maxRecordsToFetch = true;
+    boolean that_present_maxRecordsToFetch = true;
+    if (this_present_maxRecordsToFetch || that_present_maxRecordsToFetch) {
+      if (!(this_present_maxRecordsToFetch && that_present_maxRecordsToFetch))
+        return false;
+      if (this.maxRecordsToFetch != that.maxRecordsToFetch)
+        return false;
+    }
+
+    boolean this_present_moreRecordsToFetch = true;
+    boolean that_present_moreRecordsToFetch = true;
+    if (this_present_moreRecordsToFetch || that_present_moreRecordsToFetch) {
+      if (!(this_present_moreRecordsToFetch && that_present_moreRecordsToFetch))
+        return false;
+      if (this.moreRecordsToFetch != that.moreRecordsToFetch)
+        return false;
+    }
+
+    boolean this_present_totalRecords = true;
+    boolean that_present_totalRecords = true;
+    if (this_present_totalRecords || that_present_totalRecords) {
+      if (!(this_present_totalRecords && that_present_totalRecords))
+        return false;
+      if (this.totalRecords != that.totalRecords)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(FetchRowResult other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    FetchRowResult typedOther = (FetchRowResult)other;
+
+    lastComparison = Boolean.valueOf(isSetRow()).compareTo(typedOther.isSetRow());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRow()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.row, typedOther.row);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetStartRecord()).compareTo(typedOther.isSetStartRecord());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetStartRecord()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.startRecord, typedOther.startRecord);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxRecordsToFetch()).compareTo(typedOther.isSetMaxRecordsToFetch());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxRecordsToFetch()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.maxRecordsToFetch, typedOther.maxRecordsToFetch);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMoreRecordsToFetch()).compareTo(typedOther.isSetMoreRecordsToFetch());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMoreRecordsToFetch()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.moreRecordsToFetch, typedOther.moreRecordsToFetch);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetTotalRecords()).compareTo(typedOther.isSetTotalRecords());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetTotalRecords()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.totalRecords, typedOther.totalRecords);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("FetchRowResult(");
+    boolean first = true;
+
+    sb.append("row:");
+    if (this.row == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.row);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("startRecord:");
+    sb.append(this.startRecord);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("maxRecordsToFetch:");
+    sb.append(this.maxRecordsToFetch);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("moreRecordsToFetch:");
+    sb.append(this.moreRecordsToFetch);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("totalRecords:");
+    sb.append(this.totalRecords);
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    // check for required fields
+    // check for sub-struct validity
+    if (row != null) {
+      row.validate();
+    }
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(out)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(in)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class FetchRowResultStandardSchemeFactory implements SchemeFactory {
+    public FetchRowResultStandardScheme getScheme() {
+      return new FetchRowResultStandardScheme();
+    }
+  }
+
+  private static class FetchRowResultStandardScheme extends StandardScheme<FetchRowResult> {
+
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot, FetchRowResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // ROW
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT) {
+              struct.row = new Row();
+              struct.row.read(iprot);
+              struct.setRowIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // START_RECORD
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32) {
+              struct.startRecord = iprot.readI32();
+              struct.setStartRecordIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // MAX_RECORDS_TO_FETCH
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32) {
+              struct.maxRecordsToFetch = iprot.readI32();
+              struct.setMaxRecordsToFetchIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // MORE_RECORDS_TO_FETCH
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL) {
+              struct.moreRecordsToFetch = iprot.readBool();
+              struct.setMoreRecordsToFetchIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // TOTAL_RECORDS
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.I32) {
+              struct.totalRecords = iprot.readI32();
+              struct.setTotalRecordsIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot, FetchRowResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.row != null) {
+        oprot.writeFieldBegin(ROW_FIELD_DESC);
+        struct.row.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldBegin(START_RECORD_FIELD_DESC);
+      oprot.writeI32(struct.startRecord);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(MAX_RECORDS_TO_FETCH_FIELD_DESC);
+      oprot.writeI32(struct.maxRecordsToFetch);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(MORE_RECORDS_TO_FETCH_FIELD_DESC);
+      oprot.writeBool(struct.moreRecordsToFetch);
+      oprot.writeFieldEnd();
+      oprot.writeFieldBegin(TOTAL_RECORDS_FIELD_DESC);
+      oprot.writeI32(struct.totalRecords);
+      oprot.writeFieldEnd();
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class FetchRowResultTupleSchemeFactory implements SchemeFactory {
+    public FetchRowResultTupleScheme getScheme() {
+      return new FetchRowResultTupleScheme();
+    }
+  }
+
+  private static class FetchRowResultTupleScheme extends TupleScheme<FetchRowResult> {
+
+    @Override
+    public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, FetchRowResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetRow()) {
+        optionals.set(0);
+      }
+      if (struct.isSetStartRecord()) {
+        optionals.set(1);
+      }
+      if (struct.isSetMaxRecordsToFetch()) {
+        optionals.set(2);
+      }
+      if (struct.isSetMoreRecordsToFetch()) {
+        optionals.set(3);
+      }
+      if (struct.isSetTotalRecords()) {
+        optionals.set(4);
+      }
+      oprot.writeBitSet(optionals, 5);
+      if (struct.isSetRow()) {
+        struct.row.write(oprot);
+      }
+      if (struct.isSetStartRecord()) {
+        oprot.writeI32(struct.startRecord);
+      }
+      if (struct.isSetMaxRecordsToFetch()) {
+        oprot.writeI32(struct.maxRecordsToFetch);
+      }
+      if (struct.isSetMoreRecordsToFetch()) {
+        oprot.writeBool(struct.moreRecordsToFetch);
+      }
+      if (struct.isSetTotalRecords()) {
+        oprot.writeI32(struct.totalRecords);
+      }
+    }
+
+    @Override
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, FetchRowResult struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(5);
+      if (incoming.get(0)) {
+        struct.row = new Row();
+        struct.row.read(iprot);
+        struct.setRowIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.startRecord = iprot.readI32();
+        struct.setStartRecordIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.maxRecordsToFetch = iprot.readI32();
+        struct.setMaxRecordsToFetchIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.moreRecordsToFetch = iprot.readBool();
+        struct.setMoreRecordsToFetchIsSet(true);
+      }
+      if (incoming.get(4)) {
+        struct.totalRecords = iprot.readI32();
+        struct.setTotalRecordsIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/e5ae88af/scripts/interface/gen-java/org/apache/blur/thrift/generated/HighlightOptions.java
----------------------------------------------------------------------
diff --git a/scripts/interface/gen-java/org/apache/blur/thrift/generated/HighlightOptions.java b/scripts/interface/gen-java/org/apache/blur/thrift/generated/HighlightOptions.java
new file mode 100644
index 0000000..7253d1d
--- /dev/null
+++ b/scripts/interface/gen-java/org/apache/blur/thrift/generated/HighlightOptions.java
@@ -0,0 +1,671 @@
+/**
+ * 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.blur.thirdparty.thrift_0_9_0.scheme.IScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.SchemeFactory;
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.StandardScheme;
+
+import org.apache.blur.thirdparty.thrift_0_9_0.scheme.TupleScheme;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TTupleProtocol;
+import org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolException;
+import org.apache.blur.thirdparty.thrift_0_9_0.EncodingUtils;
+import org.apache.blur.thirdparty.thrift_0_9_0.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;
+
+/**
+ * The HighlightOptions controls how the data is fetched and returned.
+ */
+public class HighlightOptions implements org.apache.blur.thirdparty.thrift_0_9_0.TBase<HighlightOptions, HighlightOptions._Fields>, java.io.Serializable, Cloneable {
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct STRUCT_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TStruct("HighlightOptions");
+
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField QUERY_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("query", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, (short)1);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField PRE_TAG_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("preTag", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, (short)2);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField POST_TAG_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("postTag", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new HighlightOptionsStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new HighlightOptionsTupleSchemeFactory());
+  }
+
+  /**
+   * The original query is required if used in the Blur.fetchRow call.  If
+   * the highlightOptions is used in a call to Blur.query then the Query
+   * passed into the call via the BlurQuery will be used if this query is
+   * null.  So that means if you use highlighting from the query call you can
+   * leave this attribute null and it will default to the normal behavior.
+   */
+  public Query query; // required
+  /**
+   * The pre tag is the tag that marks the beginning of the highlighting.
+   */
+  public String preTag; // required
+  /**
+   * The post tag is the tag that marks the end of the highlighting.
+   */
+  public String postTag; // required
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.blur.thirdparty.thrift_0_9_0.TFieldIdEnum {
+    /**
+     * The original query is required if used in the Blur.fetchRow call.  If
+     * the highlightOptions is used in a call to Blur.query then the Query
+     * passed into the call via the BlurQuery will be used if this query is
+     * null.  So that means if you use highlighting from the query call you can
+     * leave this attribute null and it will default to the normal behavior.
+     */
+    QUERY((short)1, "query"),
+    /**
+     * The pre tag is the tag that marks the beginning of the highlighting.
+     */
+    PRE_TAG((short)2, "preTag"),
+    /**
+     * The post tag is the tag that marks the end of the highlighting.
+     */
+    POST_TAG((short)3, "postTag");
+
+    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: // QUERY
+          return QUERY;
+        case 2: // PRE_TAG
+          return PRE_TAG;
+        case 3: // POST_TAG
+          return POST_TAG;
+        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.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.QUERY, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("query", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.StructMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, Query.class)));
+    tmpMap.put(_Fields.PRE_TAG, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("preTag", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING)));
+    tmpMap.put(_Fields.POST_TAG, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("postTag", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData.addStructMetaDataMap(HighlightOptions.class, metaDataMap);
+  }
+
+  public HighlightOptions() {
+    this.preTag = "<<<";
+
+    this.postTag = ">>>";
+
+  }
+
+  public HighlightOptions(
+    Query query,
+    String preTag,
+    String postTag)
+  {
+    this();
+    this.query = query;
+    this.preTag = preTag;
+    this.postTag = postTag;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public HighlightOptions(HighlightOptions other) {
+    if (other.isSetQuery()) {
+      this.query = new Query(other.query);
+    }
+    if (other.isSetPreTag()) {
+      this.preTag = other.preTag;
+    }
+    if (other.isSetPostTag()) {
+      this.postTag = other.postTag;
+    }
+  }
+
+  public HighlightOptions deepCopy() {
+    return new HighlightOptions(this);
+  }
+
+  @Override
+  public void clear() {
+    this.query = null;
+    this.preTag = "<<<";
+
+    this.postTag = ">>>";
+
+  }
+
+  /**
+   * The original query is required if used in the Blur.fetchRow call.  If
+   * the highlightOptions is used in a call to Blur.query then the Query
+   * passed into the call via the BlurQuery will be used if this query is
+   * null.  So that means if you use highlighting from the query call you can
+   * leave this attribute null and it will default to the normal behavior.
+   */
+  public Query getQuery() {
+    return this.query;
+  }
+
+  /**
+   * The original query is required if used in the Blur.fetchRow call.  If
+   * the highlightOptions is used in a call to Blur.query then the Query
+   * passed into the call via the BlurQuery will be used if this query is
+   * null.  So that means if you use highlighting from the query call you can
+   * leave this attribute null and it will default to the normal behavior.
+   */
+  public HighlightOptions setQuery(Query query) {
+    this.query = query;
+    return this;
+  }
+
+  public void unsetQuery() {
+    this.query = null;
+  }
+
+  /** Returns true if field query is set (has been assigned a value) and false otherwise */
+  public boolean isSetQuery() {
+    return this.query != null;
+  }
+
+  public void setQueryIsSet(boolean value) {
+    if (!value) {
+      this.query = null;
+    }
+  }
+
+  /**
+   * The pre tag is the tag that marks the beginning of the highlighting.
+   */
+  public String getPreTag() {
+    return this.preTag;
+  }
+
+  /**
+   * The pre tag is the tag that marks the beginning of the highlighting.
+   */
+  public HighlightOptions setPreTag(String preTag) {
+    this.preTag = preTag;
+    return this;
+  }
+
+  public void unsetPreTag() {
+    this.preTag = null;
+  }
+
+  /** Returns true if field preTag is set (has been assigned a value) and false otherwise */
+  public boolean isSetPreTag() {
+    return this.preTag != null;
+  }
+
+  public void setPreTagIsSet(boolean value) {
+    if (!value) {
+      this.preTag = null;
+    }
+  }
+
+  /**
+   * The post tag is the tag that marks the end of the highlighting.
+   */
+  public String getPostTag() {
+    return this.postTag;
+  }
+
+  /**
+   * The post tag is the tag that marks the end of the highlighting.
+   */
+  public HighlightOptions setPostTag(String postTag) {
+    this.postTag = postTag;
+    return this;
+  }
+
+  public void unsetPostTag() {
+    this.postTag = null;
+  }
+
+  /** Returns true if field postTag is set (has been assigned a value) and false otherwise */
+  public boolean isSetPostTag() {
+    return this.postTag != null;
+  }
+
+  public void setPostTagIsSet(boolean value) {
+    if (!value) {
+      this.postTag = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case QUERY:
+      if (value == null) {
+        unsetQuery();
+      } else {
+        setQuery((Query)value);
+      }
+      break;
+
+    case PRE_TAG:
+      if (value == null) {
+        unsetPreTag();
+      } else {
+        setPreTag((String)value);
+      }
+      break;
+
+    case POST_TAG:
+      if (value == null) {
+        unsetPostTag();
+      } else {
+        setPostTag((String)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case QUERY:
+      return getQuery();
+
+    case PRE_TAG:
+      return getPreTag();
+
+    case POST_TAG:
+      return getPostTag();
+
+    }
+    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 QUERY:
+      return isSetQuery();
+    case PRE_TAG:
+      return isSetPreTag();
+    case POST_TAG:
+      return isSetPostTag();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof HighlightOptions)
+      return this.equals((HighlightOptions)that);
+    return false;
+  }
+
+  public boolean equals(HighlightOptions that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_query = true && this.isSetQuery();
+    boolean that_present_query = true && that.isSetQuery();
+    if (this_present_query || that_present_query) {
+      if (!(this_present_query && that_present_query))
+        return false;
+      if (!this.query.equals(that.query))
+        return false;
+    }
+
+    boolean this_present_preTag = true && this.isSetPreTag();
+    boolean that_present_preTag = true && that.isSetPreTag();
+    if (this_present_preTag || that_present_preTag) {
+      if (!(this_present_preTag && that_present_preTag))
+        return false;
+      if (!this.preTag.equals(that.preTag))
+        return false;
+    }
+
+    boolean this_present_postTag = true && this.isSetPostTag();
+    boolean that_present_postTag = true && that.isSetPostTag();
+    if (this_present_postTag || that_present_postTag) {
+      if (!(this_present_postTag && that_present_postTag))
+        return false;
+      if (!this.postTag.equals(that.postTag))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(HighlightOptions other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    HighlightOptions typedOther = (HighlightOptions)other;
+
+    lastComparison = Boolean.valueOf(isSetQuery()).compareTo(typedOther.isSetQuery());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetQuery()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.query, typedOther.query);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetPreTag()).compareTo(typedOther.isSetPreTag());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetPreTag()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.preTag, typedOther.preTag);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetPostTag()).compareTo(typedOther.isSetPostTag());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetPostTag()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.postTag, typedOther.postTag);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("HighlightOptions(");
+    boolean first = true;
+
+    sb.append("query:");
+    if (this.query == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.query);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("preTag:");
+    if (this.preTag == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.preTag);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("postTag:");
+    if (this.postTag == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.postTag);
+    }
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+    // check for required fields
+    // check for sub-struct validity
+    if (query != null) {
+      query.validate();
+    }
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(out)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TCompactProtocol(new org.apache.blur.thirdparty.thrift_0_9_0.transport.TIOStreamTransport(in)));
+    } catch (org.apache.blur.thirdparty.thrift_0_9_0.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class HighlightOptionsStandardSchemeFactory implements SchemeFactory {
+    public HighlightOptionsStandardScheme getScheme() {
+      return new HighlightOptionsStandardScheme();
+    }
+  }
+
+  private static class HighlightOptionsStandardScheme extends StandardScheme<HighlightOptions> {
+
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot, HighlightOptions struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // QUERY
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT) {
+              struct.query = new Query();
+              struct.query.read(iprot);
+              struct.setQueryIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // PRE_TAG
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.preTag = iprot.readString();
+              struct.setPreTagIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // POST_TAG
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.postTag = iprot.readString();
+              struct.setPostTagIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.blur.thirdparty.thrift_0_9_0.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.blur.thirdparty.thrift_0_9_0.protocol.TProtocol oprot, HighlightOptions struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.query != null) {
+        oprot.writeFieldBegin(QUERY_FIELD_DESC);
+        struct.query.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      if (struct.preTag != null) {
+        oprot.writeFieldBegin(PRE_TAG_FIELD_DESC);
+        oprot.writeString(struct.preTag);
+        oprot.writeFieldEnd();
+      }
+      if (struct.postTag != null) {
+        oprot.writeFieldBegin(POST_TAG_FIELD_DESC);
+        oprot.writeString(struct.postTag);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class HighlightOptionsTupleSchemeFactory implements SchemeFactory {
+    public HighlightOptionsTupleScheme getScheme() {
+      return new HighlightOptionsTupleScheme();
+    }
+  }
+
+  private static class HighlightOptionsTupleScheme extends TupleScheme<HighlightOptions> {
+
+    @Override
+    public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, HighlightOptions struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetQuery()) {
+        optionals.set(0);
+      }
+      if (struct.isSetPreTag()) {
+        optionals.set(1);
+      }
+      if (struct.isSetPostTag()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetQuery()) {
+        struct.query.write(oprot);
+      }
+      if (struct.isSetPreTag()) {
+        oprot.writeString(struct.preTag);
+      }
+      if (struct.isSetPostTag()) {
+        oprot.writeString(struct.postTag);
+      }
+    }
+
+    @Override
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, HighlightOptions struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.query = new Query();
+        struct.query.read(iprot);
+        struct.setQueryIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.preTag = iprot.readString();
+        struct.setPreTagIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.postTag = iprot.readString();
+        struct.setPostTagIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/e5ae88af/scripts/interface/gen-java/org/apache/blur/thrift/generated/Level.java
----------------------------------------------------------------------
diff --git a/scripts/interface/gen-java/org/apache/blur/thrift/generated/Level.java b/scripts/interface/gen-java/org/apache/blur/thrift/generated/Level.java
new file mode 100644
index 0000000..77d3631
--- /dev/null
+++ b/scripts/interface/gen-java/org/apache/blur/thrift/generated/Level.java
@@ -0,0 +1,85 @@
+/**
+ * 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.blur.thirdparty.thrift_0_9_0.TEnum;
+
+/**
+ * Logging level enum used to change the logging levels at runtime.
+ */
+public enum Level implements org.apache.blur.thirdparty.thrift_0_9_0.TEnum {
+  OFF(0),
+  FATAL(1),
+  ERROR(2),
+  WARN(3),
+  INFO(4),
+  DEBUG(5),
+  TRACE(6),
+  ALL(7);
+
+  private final int value;
+
+  private Level(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 Level findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return OFF;
+      case 1:
+        return FATAL;
+      case 2:
+        return ERROR;
+      case 3:
+        return WARN;
+      case 4:
+        return INFO;
+      case 5:
+        return DEBUG;
+      case 6:
+        return TRACE;
+      case 7:
+        return ALL;
+      default:
+        return null;
+    }
+  }
+}


Mime
View raw message