incubator-blur-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From amccu...@apache.org
Subject [09/51] [partial] Fixed BLUR-126.
Date Thu, 06 Jun 2013 18:57:41 GMT
http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/b0e26648/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ScoreType.java
----------------------------------------------------------------------
diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ScoreType.java b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ScoreType.java
new file mode 100644
index 0000000..11bcc07
--- /dev/null
+++ b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ScoreType.java
@@ -0,0 +1,77 @@
+/**
+ * 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;
+
+/**
+ * The scoring type used during a SuperQuery to score multi Record hits within a ColumnFamily.<br/><br/>
+ * SUPER - During a multi Record match, a calculation of the best match Record plus how often it occurs within the match Row produces the score that is used in the scoring of the SuperQuery.<br/><br/>
+ * AGGREGATE - During a multi Record match, the aggregate score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
+ * BEST - During a multi Record match, the best score of all the Records within a ColumnFamily is used in the scoring of the SuperQuery.<br/><br/>
+ * CONSTANT - A constant score of 1 is used in the scoring of the SuperQuery.<br/>
+ */
+public enum ScoreType implements org.apache.blur.thirdparty.thrift_0_9_0.TEnum {
+  SUPER(0),
+  AGGREGATE(1),
+  BEST(2),
+  CONSTANT(3);
+
+  private final int value;
+
+  private ScoreType(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 ScoreType findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return SUPER;
+      case 1:
+        return AGGREGATE;
+      case 2:
+        return BEST;
+      case 3:
+        return CONSTANT;
+      default:
+        return null;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/b0e26648/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Selector.java
----------------------------------------------------------------------
diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Selector.java b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Selector.java
new file mode 100644
index 0000000..90da051
--- /dev/null
+++ b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/Selector.java
@@ -0,0 +1,1596 @@
+/**
+ * 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;
+
+/**
+ * Select carries the request for information to be retrieved from the stored columns.
+ */
+public class Selector implements org.apache.blur.thirdparty.thrift_0_9_0.TBase<Selector, Selector._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("Selector");
+
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField RECORD_ONLY_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("recordOnly", 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 LOCATION_ID_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("locationId", 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 ROW_ID_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("rowId", 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 RECORD_ID_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("recordId", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, (short)4);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField COLUMN_FAMILIES_TO_FETCH_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("columnFamiliesToFetch", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET, (short)5);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField COLUMNS_TO_FETCH_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("columnsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, (short)6);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField ALLOW_STALE_DATA_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("allowStaleData", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL, (short)7);
+  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)8);
+  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)9);
+  private static final org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField HIGHLIGHT_OPTIONS_FIELD_DESC = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TField("highlightOptions", org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT, (short)10);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new SelectorStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new SelectorTupleSchemeFactory());
+  }
+
+  /**
+   * Fetch the Record only, not the entire Row.
+   */
+  public boolean recordOnly; // required
+  /**
+   * WARNING: This is an internal only attribute and is not intended for use by clients.
+   * The location id of the Record or Row to be fetched.
+   */
+  public String locationId; // required
+  /**
+   * The row id of the Row to be fetched, not to be used with location id.
+   */
+  public String rowId; // required
+  /**
+   * The record id of the Record to be fetched, not to be used with location id.  However the row id needs to be provided to locate the correct Row with the requested Record.
+   */
+  public String recordId; // required
+  /**
+   * The column families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Set<String> columnFamiliesToFetch; // required
+  /**
+   * The columns in the families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Map<String,Set<String>> columnsToFetch; // required
+  /**
+   * @deprecated This value is no longer used.  This allows the fetch to see the most current data that has been added to the table.
+   */
+  public boolean allowStaleData; // required
+  /**
+   * Only valid for Row fetches, the record in the row to start fetching.  If the row contains 1000
+   * records and you want the first 100, then this value is 0.  If you want records 300-400 then this
+   * value would be 300.  If startRecord is beyond the end of the row, the row will be null in the
+   * FetchResult.  Used in conjunction with maxRecordsToFetch.
+   */
+  public int startRecord; // required
+  /**
+   * Only valid for Row fetches, the number of records to fetch.  If the row contains 1000 records
+   * and you want the first 100, then this value is 100.  If you want records 300-400 then this value
+   * would be 100.  Used in conjunction with maxRecordsToFetch. By default this will fetch all the
+   * records in the row, be careful.
+   */
+  public int maxRecordsToFetch; // required
+  /**
+   * The HighlightOptions object controls how the data is highlighted.  If null no highlighting will occur.
+   */
+  public HighlightOptions highlightOptions; // 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 {
+    /**
+     * Fetch the Record only, not the entire Row.
+     */
+    RECORD_ONLY((short)1, "recordOnly"),
+    /**
+     * WARNING: This is an internal only attribute and is not intended for use by clients.
+     * The location id of the Record or Row to be fetched.
+     */
+    LOCATION_ID((short)2, "locationId"),
+    /**
+     * The row id of the Row to be fetched, not to be used with location id.
+     */
+    ROW_ID((short)3, "rowId"),
+    /**
+     * The record id of the Record to be fetched, not to be used with location id.  However the row id needs to be provided to locate the correct Row with the requested Record.
+     */
+    RECORD_ID((short)4, "recordId"),
+    /**
+     * The column families to fetch.  If null, fetch all.  If empty, fetch none.
+     */
+    COLUMN_FAMILIES_TO_FETCH((short)5, "columnFamiliesToFetch"),
+    /**
+     * The columns in the families to fetch.  If null, fetch all.  If empty, fetch none.
+     */
+    COLUMNS_TO_FETCH((short)6, "columnsToFetch"),
+    /**
+     * @deprecated This value is no longer used.  This allows the fetch to see the most current data that has been added to the table.
+     */
+    ALLOW_STALE_DATA((short)7, "allowStaleData"),
+    /**
+     * Only valid for Row fetches, the record in the row to start fetching.  If the row contains 1000
+     * records and you want the first 100, then this value is 0.  If you want records 300-400 then this
+     * value would be 300.  If startRecord is beyond the end of the row, the row will be null in the
+     * FetchResult.  Used in conjunction with maxRecordsToFetch.
+     */
+    START_RECORD((short)8, "startRecord"),
+    /**
+     * Only valid for Row fetches, the number of records to fetch.  If the row contains 1000 records
+     * and you want the first 100, then this value is 100.  If you want records 300-400 then this value
+     * would be 100.  Used in conjunction with maxRecordsToFetch. By default this will fetch all the
+     * records in the row, be careful.
+     */
+    MAX_RECORDS_TO_FETCH((short)9, "maxRecordsToFetch"),
+    /**
+     * The HighlightOptions object controls how the data is highlighted.  If null no highlighting will occur.
+     */
+    HIGHLIGHT_OPTIONS((short)10, "highlightOptions");
+
+    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: // RECORD_ONLY
+          return RECORD_ONLY;
+        case 2: // LOCATION_ID
+          return LOCATION_ID;
+        case 3: // ROW_ID
+          return ROW_ID;
+        case 4: // RECORD_ID
+          return RECORD_ID;
+        case 5: // COLUMN_FAMILIES_TO_FETCH
+          return COLUMN_FAMILIES_TO_FETCH;
+        case 6: // COLUMNS_TO_FETCH
+          return COLUMNS_TO_FETCH;
+        case 7: // ALLOW_STALE_DATA
+          return ALLOW_STALE_DATA;
+        case 8: // START_RECORD
+          return START_RECORD;
+        case 9: // MAX_RECORDS_TO_FETCH
+          return MAX_RECORDS_TO_FETCH;
+        case 10: // HIGHLIGHT_OPTIONS
+          return HIGHLIGHT_OPTIONS;
+        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 __RECORDONLY_ISSET_ID = 0;
+  private static final int __ALLOWSTALEDATA_ISSET_ID = 1;
+  private static final int __STARTRECORD_ISSET_ID = 2;
+  private static final int __MAXRECORDSTOFETCH_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.RECORD_ONLY, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("recordOnly", 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.LOCATION_ID, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("locationId", 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_ID, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("rowId", 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.RECORD_ID, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("recordId", 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.COLUMN_FAMILIES_TO_FETCH, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("columnFamiliesToFetch", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.SetMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET, 
+            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.COLUMNS_TO_FETCH, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("columnsToFetch", org.apache.blur.thirdparty.thrift_0_9_0.TFieldRequirementType.DEFAULT, 
+        new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.MapMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP, 
+            new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldValueMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING), 
+            new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.SetMetaData(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET, 
+                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.ALLOW_STALE_DATA, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("allowStaleData", 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.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.HIGHLIGHT_OPTIONS, new org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData("highlightOptions", 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, HighlightOptions.class)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.blur.thirdparty.thrift_0_9_0.meta_data.FieldMetaData.addStructMetaDataMap(Selector.class, metaDataMap);
+  }
+
+  public Selector() {
+    this.startRecord = 0;
+
+    this.maxRecordsToFetch = 2147483647;
+
+  }
+
+  public Selector(
+    boolean recordOnly,
+    String locationId,
+    String rowId,
+    String recordId,
+    Set<String> columnFamiliesToFetch,
+    Map<String,Set<String>> columnsToFetch,
+    boolean allowStaleData,
+    int startRecord,
+    int maxRecordsToFetch,
+    HighlightOptions highlightOptions)
+  {
+    this();
+    this.recordOnly = recordOnly;
+    setRecordOnlyIsSet(true);
+    this.locationId = locationId;
+    this.rowId = rowId;
+    this.recordId = recordId;
+    this.columnFamiliesToFetch = columnFamiliesToFetch;
+    this.columnsToFetch = columnsToFetch;
+    this.allowStaleData = allowStaleData;
+    setAllowStaleDataIsSet(true);
+    this.startRecord = startRecord;
+    setStartRecordIsSet(true);
+    this.maxRecordsToFetch = maxRecordsToFetch;
+    setMaxRecordsToFetchIsSet(true);
+    this.highlightOptions = highlightOptions;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public Selector(Selector other) {
+    __isset_bitfield = other.__isset_bitfield;
+    this.recordOnly = other.recordOnly;
+    if (other.isSetLocationId()) {
+      this.locationId = other.locationId;
+    }
+    if (other.isSetRowId()) {
+      this.rowId = other.rowId;
+    }
+    if (other.isSetRecordId()) {
+      this.recordId = other.recordId;
+    }
+    if (other.isSetColumnFamiliesToFetch()) {
+      Set<String> __this__columnFamiliesToFetch = new HashSet<String>();
+      for (String other_element : other.columnFamiliesToFetch) {
+        __this__columnFamiliesToFetch.add(other_element);
+      }
+      this.columnFamiliesToFetch = __this__columnFamiliesToFetch;
+    }
+    if (other.isSetColumnsToFetch()) {
+      Map<String,Set<String>> __this__columnsToFetch = new HashMap<String,Set<String>>();
+      for (Map.Entry<String, Set<String>> other_element : other.columnsToFetch.entrySet()) {
+
+        String other_element_key = other_element.getKey();
+        Set<String> other_element_value = other_element.getValue();
+
+        String __this__columnsToFetch_copy_key = other_element_key;
+
+        Set<String> __this__columnsToFetch_copy_value = new HashSet<String>();
+        for (String other_element_value_element : other_element_value) {
+          __this__columnsToFetch_copy_value.add(other_element_value_element);
+        }
+
+        __this__columnsToFetch.put(__this__columnsToFetch_copy_key, __this__columnsToFetch_copy_value);
+      }
+      this.columnsToFetch = __this__columnsToFetch;
+    }
+    this.allowStaleData = other.allowStaleData;
+    this.startRecord = other.startRecord;
+    this.maxRecordsToFetch = other.maxRecordsToFetch;
+    if (other.isSetHighlightOptions()) {
+      this.highlightOptions = new HighlightOptions(other.highlightOptions);
+    }
+  }
+
+  public Selector deepCopy() {
+    return new Selector(this);
+  }
+
+  @Override
+  public void clear() {
+    setRecordOnlyIsSet(false);
+    this.recordOnly = false;
+    this.locationId = null;
+    this.rowId = null;
+    this.recordId = null;
+    this.columnFamiliesToFetch = null;
+    this.columnsToFetch = null;
+    setAllowStaleDataIsSet(false);
+    this.allowStaleData = false;
+    this.startRecord = 0;
+
+    this.maxRecordsToFetch = 2147483647;
+
+    this.highlightOptions = null;
+  }
+
+  /**
+   * Fetch the Record only, not the entire Row.
+   */
+  public boolean isRecordOnly() {
+    return this.recordOnly;
+  }
+
+  /**
+   * Fetch the Record only, not the entire Row.
+   */
+  public Selector setRecordOnly(boolean recordOnly) {
+    this.recordOnly = recordOnly;
+    setRecordOnlyIsSet(true);
+    return this;
+  }
+
+  public void unsetRecordOnly() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __RECORDONLY_ISSET_ID);
+  }
+
+  /** Returns true if field recordOnly is set (has been assigned a value) and false otherwise */
+  public boolean isSetRecordOnly() {
+    return EncodingUtils.testBit(__isset_bitfield, __RECORDONLY_ISSET_ID);
+  }
+
+  public void setRecordOnlyIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __RECORDONLY_ISSET_ID, value);
+  }
+
+  /**
+   * WARNING: This is an internal only attribute and is not intended for use by clients.
+   * The location id of the Record or Row to be fetched.
+   */
+  public String getLocationId() {
+    return this.locationId;
+  }
+
+  /**
+   * WARNING: This is an internal only attribute and is not intended for use by clients.
+   * The location id of the Record or Row to be fetched.
+   */
+  public Selector setLocationId(String locationId) {
+    this.locationId = locationId;
+    return this;
+  }
+
+  public void unsetLocationId() {
+    this.locationId = null;
+  }
+
+  /** Returns true if field locationId is set (has been assigned a value) and false otherwise */
+  public boolean isSetLocationId() {
+    return this.locationId != null;
+  }
+
+  public void setLocationIdIsSet(boolean value) {
+    if (!value) {
+      this.locationId = null;
+    }
+  }
+
+  /**
+   * The row id of the Row to be fetched, not to be used with location id.
+   */
+  public String getRowId() {
+    return this.rowId;
+  }
+
+  /**
+   * The row id of the Row to be fetched, not to be used with location id.
+   */
+  public Selector setRowId(String rowId) {
+    this.rowId = rowId;
+    return this;
+  }
+
+  public void unsetRowId() {
+    this.rowId = null;
+  }
+
+  /** Returns true if field rowId is set (has been assigned a value) and false otherwise */
+  public boolean isSetRowId() {
+    return this.rowId != null;
+  }
+
+  public void setRowIdIsSet(boolean value) {
+    if (!value) {
+      this.rowId = null;
+    }
+  }
+
+  /**
+   * The record id of the Record to be fetched, not to be used with location id.  However the row id needs to be provided to locate the correct Row with the requested Record.
+   */
+  public String getRecordId() {
+    return this.recordId;
+  }
+
+  /**
+   * The record id of the Record to be fetched, not to be used with location id.  However the row id needs to be provided to locate the correct Row with the requested Record.
+   */
+  public Selector setRecordId(String recordId) {
+    this.recordId = recordId;
+    return this;
+  }
+
+  public void unsetRecordId() {
+    this.recordId = null;
+  }
+
+  /** Returns true if field recordId is set (has been assigned a value) and false otherwise */
+  public boolean isSetRecordId() {
+    return this.recordId != null;
+  }
+
+  public void setRecordIdIsSet(boolean value) {
+    if (!value) {
+      this.recordId = null;
+    }
+  }
+
+  public int getColumnFamiliesToFetchSize() {
+    return (this.columnFamiliesToFetch == null) ? 0 : this.columnFamiliesToFetch.size();
+  }
+
+  public java.util.Iterator<String> getColumnFamiliesToFetchIterator() {
+    return (this.columnFamiliesToFetch == null) ? null : this.columnFamiliesToFetch.iterator();
+  }
+
+  public void addToColumnFamiliesToFetch(String elem) {
+    if (this.columnFamiliesToFetch == null) {
+      this.columnFamiliesToFetch = new HashSet<String>();
+    }
+    this.columnFamiliesToFetch.add(elem);
+  }
+
+  /**
+   * The column families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Set<String> getColumnFamiliesToFetch() {
+    return this.columnFamiliesToFetch;
+  }
+
+  /**
+   * The column families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Selector setColumnFamiliesToFetch(Set<String> columnFamiliesToFetch) {
+    this.columnFamiliesToFetch = columnFamiliesToFetch;
+    return this;
+  }
+
+  public void unsetColumnFamiliesToFetch() {
+    this.columnFamiliesToFetch = null;
+  }
+
+  /** Returns true if field columnFamiliesToFetch is set (has been assigned a value) and false otherwise */
+  public boolean isSetColumnFamiliesToFetch() {
+    return this.columnFamiliesToFetch != null;
+  }
+
+  public void setColumnFamiliesToFetchIsSet(boolean value) {
+    if (!value) {
+      this.columnFamiliesToFetch = null;
+    }
+  }
+
+  public int getColumnsToFetchSize() {
+    return (this.columnsToFetch == null) ? 0 : this.columnsToFetch.size();
+  }
+
+  public void putToColumnsToFetch(String key, Set<String> val) {
+    if (this.columnsToFetch == null) {
+      this.columnsToFetch = new HashMap<String,Set<String>>();
+    }
+    this.columnsToFetch.put(key, val);
+  }
+
+  /**
+   * The columns in the families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Map<String,Set<String>> getColumnsToFetch() {
+    return this.columnsToFetch;
+  }
+
+  /**
+   * The columns in the families to fetch.  If null, fetch all.  If empty, fetch none.
+   */
+  public Selector setColumnsToFetch(Map<String,Set<String>> columnsToFetch) {
+    this.columnsToFetch = columnsToFetch;
+    return this;
+  }
+
+  public void unsetColumnsToFetch() {
+    this.columnsToFetch = null;
+  }
+
+  /** Returns true if field columnsToFetch is set (has been assigned a value) and false otherwise */
+  public boolean isSetColumnsToFetch() {
+    return this.columnsToFetch != null;
+  }
+
+  public void setColumnsToFetchIsSet(boolean value) {
+    if (!value) {
+      this.columnsToFetch = null;
+    }
+  }
+
+  /**
+   * @deprecated This value is no longer used.  This allows the fetch to see the most current data that has been added to the table.
+   */
+  public boolean isAllowStaleData() {
+    return this.allowStaleData;
+  }
+
+  /**
+   * @deprecated This value is no longer used.  This allows the fetch to see the most current data that has been added to the table.
+   */
+  public Selector setAllowStaleData(boolean allowStaleData) {
+    this.allowStaleData = allowStaleData;
+    setAllowStaleDataIsSet(true);
+    return this;
+  }
+
+  public void unsetAllowStaleData() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ALLOWSTALEDATA_ISSET_ID);
+  }
+
+  /** Returns true if field allowStaleData is set (has been assigned a value) and false otherwise */
+  public boolean isSetAllowStaleData() {
+    return EncodingUtils.testBit(__isset_bitfield, __ALLOWSTALEDATA_ISSET_ID);
+  }
+
+  public void setAllowStaleDataIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ALLOWSTALEDATA_ISSET_ID, value);
+  }
+
+  /**
+   * Only valid for Row fetches, the record in the row to start fetching.  If the row contains 1000
+   * records and you want the first 100, then this value is 0.  If you want records 300-400 then this
+   * value would be 300.  If startRecord is beyond the end of the row, the row will be null in the
+   * FetchResult.  Used in conjunction with maxRecordsToFetch.
+   */
+  public int getStartRecord() {
+    return this.startRecord;
+  }
+
+  /**
+   * Only valid for Row fetches, the record in the row to start fetching.  If the row contains 1000
+   * records and you want the first 100, then this value is 0.  If you want records 300-400 then this
+   * value would be 300.  If startRecord is beyond the end of the row, the row will be null in the
+   * FetchResult.  Used in conjunction with maxRecordsToFetch.
+   */
+  public Selector 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);
+  }
+
+  /**
+   * Only valid for Row fetches, the number of records to fetch.  If the row contains 1000 records
+   * and you want the first 100, then this value is 100.  If you want records 300-400 then this value
+   * would be 100.  Used in conjunction with maxRecordsToFetch. By default this will fetch all the
+   * records in the row, be careful.
+   */
+  public int getMaxRecordsToFetch() {
+    return this.maxRecordsToFetch;
+  }
+
+  /**
+   * Only valid for Row fetches, the number of records to fetch.  If the row contains 1000 records
+   * and you want the first 100, then this value is 100.  If you want records 300-400 then this value
+   * would be 100.  Used in conjunction with maxRecordsToFetch. By default this will fetch all the
+   * records in the row, be careful.
+   */
+  public Selector 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);
+  }
+
+  /**
+   * The HighlightOptions object controls how the data is highlighted.  If null no highlighting will occur.
+   */
+  public HighlightOptions getHighlightOptions() {
+    return this.highlightOptions;
+  }
+
+  /**
+   * The HighlightOptions object controls how the data is highlighted.  If null no highlighting will occur.
+   */
+  public Selector setHighlightOptions(HighlightOptions highlightOptions) {
+    this.highlightOptions = highlightOptions;
+    return this;
+  }
+
+  public void unsetHighlightOptions() {
+    this.highlightOptions = null;
+  }
+
+  /** Returns true if field highlightOptions is set (has been assigned a value) and false otherwise */
+  public boolean isSetHighlightOptions() {
+    return this.highlightOptions != null;
+  }
+
+  public void setHighlightOptionsIsSet(boolean value) {
+    if (!value) {
+      this.highlightOptions = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case RECORD_ONLY:
+      if (value == null) {
+        unsetRecordOnly();
+      } else {
+        setRecordOnly((Boolean)value);
+      }
+      break;
+
+    case LOCATION_ID:
+      if (value == null) {
+        unsetLocationId();
+      } else {
+        setLocationId((String)value);
+      }
+      break;
+
+    case ROW_ID:
+      if (value == null) {
+        unsetRowId();
+      } else {
+        setRowId((String)value);
+      }
+      break;
+
+    case RECORD_ID:
+      if (value == null) {
+        unsetRecordId();
+      } else {
+        setRecordId((String)value);
+      }
+      break;
+
+    case COLUMN_FAMILIES_TO_FETCH:
+      if (value == null) {
+        unsetColumnFamiliesToFetch();
+      } else {
+        setColumnFamiliesToFetch((Set<String>)value);
+      }
+      break;
+
+    case COLUMNS_TO_FETCH:
+      if (value == null) {
+        unsetColumnsToFetch();
+      } else {
+        setColumnsToFetch((Map<String,Set<String>>)value);
+      }
+      break;
+
+    case ALLOW_STALE_DATA:
+      if (value == null) {
+        unsetAllowStaleData();
+      } else {
+        setAllowStaleData((Boolean)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 HIGHLIGHT_OPTIONS:
+      if (value == null) {
+        unsetHighlightOptions();
+      } else {
+        setHighlightOptions((HighlightOptions)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case RECORD_ONLY:
+      return Boolean.valueOf(isRecordOnly());
+
+    case LOCATION_ID:
+      return getLocationId();
+
+    case ROW_ID:
+      return getRowId();
+
+    case RECORD_ID:
+      return getRecordId();
+
+    case COLUMN_FAMILIES_TO_FETCH:
+      return getColumnFamiliesToFetch();
+
+    case COLUMNS_TO_FETCH:
+      return getColumnsToFetch();
+
+    case ALLOW_STALE_DATA:
+      return Boolean.valueOf(isAllowStaleData());
+
+    case START_RECORD:
+      return Integer.valueOf(getStartRecord());
+
+    case MAX_RECORDS_TO_FETCH:
+      return Integer.valueOf(getMaxRecordsToFetch());
+
+    case HIGHLIGHT_OPTIONS:
+      return getHighlightOptions();
+
+    }
+    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 RECORD_ONLY:
+      return isSetRecordOnly();
+    case LOCATION_ID:
+      return isSetLocationId();
+    case ROW_ID:
+      return isSetRowId();
+    case RECORD_ID:
+      return isSetRecordId();
+    case COLUMN_FAMILIES_TO_FETCH:
+      return isSetColumnFamiliesToFetch();
+    case COLUMNS_TO_FETCH:
+      return isSetColumnsToFetch();
+    case ALLOW_STALE_DATA:
+      return isSetAllowStaleData();
+    case START_RECORD:
+      return isSetStartRecord();
+    case MAX_RECORDS_TO_FETCH:
+      return isSetMaxRecordsToFetch();
+    case HIGHLIGHT_OPTIONS:
+      return isSetHighlightOptions();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof Selector)
+      return this.equals((Selector)that);
+    return false;
+  }
+
+  public boolean equals(Selector that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_recordOnly = true;
+    boolean that_present_recordOnly = true;
+    if (this_present_recordOnly || that_present_recordOnly) {
+      if (!(this_present_recordOnly && that_present_recordOnly))
+        return false;
+      if (this.recordOnly != that.recordOnly)
+        return false;
+    }
+
+    boolean this_present_locationId = true && this.isSetLocationId();
+    boolean that_present_locationId = true && that.isSetLocationId();
+    if (this_present_locationId || that_present_locationId) {
+      if (!(this_present_locationId && that_present_locationId))
+        return false;
+      if (!this.locationId.equals(that.locationId))
+        return false;
+    }
+
+    boolean this_present_rowId = true && this.isSetRowId();
+    boolean that_present_rowId = true && that.isSetRowId();
+    if (this_present_rowId || that_present_rowId) {
+      if (!(this_present_rowId && that_present_rowId))
+        return false;
+      if (!this.rowId.equals(that.rowId))
+        return false;
+    }
+
+    boolean this_present_recordId = true && this.isSetRecordId();
+    boolean that_present_recordId = true && that.isSetRecordId();
+    if (this_present_recordId || that_present_recordId) {
+      if (!(this_present_recordId && that_present_recordId))
+        return false;
+      if (!this.recordId.equals(that.recordId))
+        return false;
+    }
+
+    boolean this_present_columnFamiliesToFetch = true && this.isSetColumnFamiliesToFetch();
+    boolean that_present_columnFamiliesToFetch = true && that.isSetColumnFamiliesToFetch();
+    if (this_present_columnFamiliesToFetch || that_present_columnFamiliesToFetch) {
+      if (!(this_present_columnFamiliesToFetch && that_present_columnFamiliesToFetch))
+        return false;
+      if (!this.columnFamiliesToFetch.equals(that.columnFamiliesToFetch))
+        return false;
+    }
+
+    boolean this_present_columnsToFetch = true && this.isSetColumnsToFetch();
+    boolean that_present_columnsToFetch = true && that.isSetColumnsToFetch();
+    if (this_present_columnsToFetch || that_present_columnsToFetch) {
+      if (!(this_present_columnsToFetch && that_present_columnsToFetch))
+        return false;
+      if (!this.columnsToFetch.equals(that.columnsToFetch))
+        return false;
+    }
+
+    boolean this_present_allowStaleData = true;
+    boolean that_present_allowStaleData = true;
+    if (this_present_allowStaleData || that_present_allowStaleData) {
+      if (!(this_present_allowStaleData && that_present_allowStaleData))
+        return false;
+      if (this.allowStaleData != that.allowStaleData)
+        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_highlightOptions = true && this.isSetHighlightOptions();
+    boolean that_present_highlightOptions = true && that.isSetHighlightOptions();
+    if (this_present_highlightOptions || that_present_highlightOptions) {
+      if (!(this_present_highlightOptions && that_present_highlightOptions))
+        return false;
+      if (!this.highlightOptions.equals(that.highlightOptions))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    return 0;
+  }
+
+  public int compareTo(Selector other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+    Selector typedOther = (Selector)other;
+
+    lastComparison = Boolean.valueOf(isSetRecordOnly()).compareTo(typedOther.isSetRecordOnly());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRecordOnly()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.recordOnly, typedOther.recordOnly);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetLocationId()).compareTo(typedOther.isSetLocationId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetLocationId()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.locationId, typedOther.locationId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRowId()).compareTo(typedOther.isSetRowId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRowId()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.rowId, typedOther.rowId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRecordId()).compareTo(typedOther.isSetRecordId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRecordId()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.recordId, typedOther.recordId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetColumnFamiliesToFetch()).compareTo(typedOther.isSetColumnFamiliesToFetch());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetColumnFamiliesToFetch()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.columnFamiliesToFetch, typedOther.columnFamiliesToFetch);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetColumnsToFetch()).compareTo(typedOther.isSetColumnsToFetch());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetColumnsToFetch()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.columnsToFetch, typedOther.columnsToFetch);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetAllowStaleData()).compareTo(typedOther.isSetAllowStaleData());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetAllowStaleData()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.allowStaleData, typedOther.allowStaleData);
+      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(isSetHighlightOptions()).compareTo(typedOther.isSetHighlightOptions());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetHighlightOptions()) {
+      lastComparison = org.apache.blur.thirdparty.thrift_0_9_0.TBaseHelper.compareTo(this.highlightOptions, typedOther.highlightOptions);
+      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("Selector(");
+    boolean first = true;
+
+    sb.append("recordOnly:");
+    sb.append(this.recordOnly);
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("locationId:");
+    if (this.locationId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.locationId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("rowId:");
+    if (this.rowId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.rowId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("recordId:");
+    if (this.recordId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.recordId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("columnFamiliesToFetch:");
+    if (this.columnFamiliesToFetch == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.columnFamiliesToFetch);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("columnsToFetch:");
+    if (this.columnsToFetch == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.columnsToFetch);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("allowStaleData:");
+    sb.append(this.allowStaleData);
+    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("highlightOptions:");
+    if (this.highlightOptions == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.highlightOptions);
+    }
+    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 (highlightOptions != null) {
+      highlightOptions.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 SelectorStandardSchemeFactory implements SchemeFactory {
+    public SelectorStandardScheme getScheme() {
+      return new SelectorStandardScheme();
+    }
+  }
+
+  private static class SelectorStandardScheme extends StandardScheme<Selector> {
+
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol iprot, Selector 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: // RECORD_ONLY
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL) {
+              struct.recordOnly = iprot.readBool();
+              struct.setRecordOnlyIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // LOCATION_ID
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.locationId = iprot.readString();
+              struct.setLocationIdIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // ROW_ID
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.rowId = iprot.readString();
+              struct.setRowIdIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // RECORD_ID
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING) {
+              struct.recordId = iprot.readString();
+              struct.setRecordIdIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // COLUMN_FAMILIES_TO_FETCH
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET) {
+              {
+                org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet _set24 = iprot.readSetBegin();
+                struct.columnFamiliesToFetch = new HashSet<String>(2*_set24.size);
+                for (int _i25 = 0; _i25 < _set24.size; ++_i25)
+                {
+                  String _elem26; // required
+                  _elem26 = iprot.readString();
+                  struct.columnFamiliesToFetch.add(_elem26);
+                }
+                iprot.readSetEnd();
+              }
+              struct.setColumnFamiliesToFetchIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 6: // COLUMNS_TO_FETCH
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.MAP) {
+              {
+                org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map27 = iprot.readMapBegin();
+                struct.columnsToFetch = new HashMap<String,Set<String>>(2*_map27.size);
+                for (int _i28 = 0; _i28 < _map27.size; ++_i28)
+                {
+                  String _key29; // required
+                  Set<String> _val30; // optional
+                  _key29 = iprot.readString();
+                  {
+                    org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet _set31 = iprot.readSetBegin();
+                    _val30 = new HashSet<String>(2*_set31.size);
+                    for (int _i32 = 0; _i32 < _set31.size; ++_i32)
+                    {
+                      String _elem33; // required
+                      _elem33 = iprot.readString();
+                      _val30.add(_elem33);
+                    }
+                    iprot.readSetEnd();
+                  }
+                  struct.columnsToFetch.put(_key29, _val30);
+                }
+                iprot.readMapEnd();
+              }
+              struct.setColumnsToFetchIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 7: // ALLOW_STALE_DATA
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.BOOL) {
+              struct.allowStaleData = iprot.readBool();
+              struct.setAllowStaleDataIsSet(true);
+            } else { 
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 8: // 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 9: // 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 10: // HIGHLIGHT_OPTIONS
+            if (schemeField.type == org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRUCT) {
+              struct.highlightOptions = new HighlightOptions();
+              struct.highlightOptions.read(iprot);
+              struct.setHighlightOptionsIsSet(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, Selector struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      oprot.writeFieldBegin(RECORD_ONLY_FIELD_DESC);
+      oprot.writeBool(struct.recordOnly);
+      oprot.writeFieldEnd();
+      if (struct.locationId != null) {
+        oprot.writeFieldBegin(LOCATION_ID_FIELD_DESC);
+        oprot.writeString(struct.locationId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.rowId != null) {
+        oprot.writeFieldBegin(ROW_ID_FIELD_DESC);
+        oprot.writeString(struct.rowId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.recordId != null) {
+        oprot.writeFieldBegin(RECORD_ID_FIELD_DESC);
+        oprot.writeString(struct.recordId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.columnFamiliesToFetch != null) {
+        oprot.writeFieldBegin(COLUMN_FAMILIES_TO_FETCH_FIELD_DESC);
+        {
+          oprot.writeSetBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, struct.columnFamiliesToFetch.size()));
+          for (String _iter34 : struct.columnFamiliesToFetch)
+          {
+            oprot.writeString(_iter34);
+          }
+          oprot.writeSetEnd();
+        }
+        oprot.writeFieldEnd();
+      }
+      if (struct.columnsToFetch != null) {
+        oprot.writeFieldBegin(COLUMNS_TO_FETCH_FIELD_DESC);
+        {
+          oprot.writeMapBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET, struct.columnsToFetch.size()));
+          for (Map.Entry<String, Set<String>> _iter35 : struct.columnsToFetch.entrySet())
+          {
+            oprot.writeString(_iter35.getKey());
+            {
+              oprot.writeSetBegin(new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, _iter35.getValue().size()));
+              for (String _iter36 : _iter35.getValue())
+              {
+                oprot.writeString(_iter36);
+              }
+              oprot.writeSetEnd();
+            }
+          }
+          oprot.writeMapEnd();
+        }
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldBegin(ALLOW_STALE_DATA_FIELD_DESC);
+      oprot.writeBool(struct.allowStaleData);
+      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();
+      if (struct.highlightOptions != null) {
+        oprot.writeFieldBegin(HIGHLIGHT_OPTIONS_FIELD_DESC);
+        struct.highlightOptions.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class SelectorTupleSchemeFactory implements SchemeFactory {
+    public SelectorTupleScheme getScheme() {
+      return new SelectorTupleScheme();
+    }
+  }
+
+  private static class SelectorTupleScheme extends TupleScheme<Selector> {
+
+    @Override
+    public void write(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, Selector struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetRecordOnly()) {
+        optionals.set(0);
+      }
+      if (struct.isSetLocationId()) {
+        optionals.set(1);
+      }
+      if (struct.isSetRowId()) {
+        optionals.set(2);
+      }
+      if (struct.isSetRecordId()) {
+        optionals.set(3);
+      }
+      if (struct.isSetColumnFamiliesToFetch()) {
+        optionals.set(4);
+      }
+      if (struct.isSetColumnsToFetch()) {
+        optionals.set(5);
+      }
+      if (struct.isSetAllowStaleData()) {
+        optionals.set(6);
+      }
+      if (struct.isSetStartRecord()) {
+        optionals.set(7);
+      }
+      if (struct.isSetMaxRecordsToFetch()) {
+        optionals.set(8);
+      }
+      if (struct.isSetHighlightOptions()) {
+        optionals.set(9);
+      }
+      oprot.writeBitSet(optionals, 10);
+      if (struct.isSetRecordOnly()) {
+        oprot.writeBool(struct.recordOnly);
+      }
+      if (struct.isSetLocationId()) {
+        oprot.writeString(struct.locationId);
+      }
+      if (struct.isSetRowId()) {
+        oprot.writeString(struct.rowId);
+      }
+      if (struct.isSetRecordId()) {
+        oprot.writeString(struct.recordId);
+      }
+      if (struct.isSetColumnFamiliesToFetch()) {
+        {
+          oprot.writeI32(struct.columnFamiliesToFetch.size());
+          for (String _iter37 : struct.columnFamiliesToFetch)
+          {
+            oprot.writeString(_iter37);
+          }
+        }
+      }
+      if (struct.isSetColumnsToFetch()) {
+        {
+          oprot.writeI32(struct.columnsToFetch.size());
+          for (Map.Entry<String, Set<String>> _iter38 : struct.columnsToFetch.entrySet())
+          {
+            oprot.writeString(_iter38.getKey());
+            {
+              oprot.writeI32(_iter38.getValue().size());
+              for (String _iter39 : _iter38.getValue())
+              {
+                oprot.writeString(_iter39);
+              }
+            }
+          }
+        }
+      }
+      if (struct.isSetAllowStaleData()) {
+        oprot.writeBool(struct.allowStaleData);
+      }
+      if (struct.isSetStartRecord()) {
+        oprot.writeI32(struct.startRecord);
+      }
+      if (struct.isSetMaxRecordsToFetch()) {
+        oprot.writeI32(struct.maxRecordsToFetch);
+      }
+      if (struct.isSetHighlightOptions()) {
+        struct.highlightOptions.write(oprot);
+      }
+    }
+
+    @Override
+    public void read(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TProtocol prot, Selector struct) throws org.apache.blur.thirdparty.thrift_0_9_0.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(10);
+      if (incoming.get(0)) {
+        struct.recordOnly = iprot.readBool();
+        struct.setRecordOnlyIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.locationId = iprot.readString();
+        struct.setLocationIdIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.rowId = iprot.readString();
+        struct.setRowIdIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.recordId = iprot.readString();
+        struct.setRecordIdIsSet(true);
+      }
+      if (incoming.get(4)) {
+        {
+          org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet _set40 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, iprot.readI32());
+          struct.columnFamiliesToFetch = new HashSet<String>(2*_set40.size);
+          for (int _i41 = 0; _i41 < _set40.size; ++_i41)
+          {
+            String _elem42; // required
+            _elem42 = iprot.readString();
+            struct.columnFamiliesToFetch.add(_elem42);
+          }
+        }
+        struct.setColumnFamiliesToFetchIsSet(true);
+      }
+      if (incoming.get(5)) {
+        {
+          org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap _map43 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TMap(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.SET, iprot.readI32());
+          struct.columnsToFetch = new HashMap<String,Set<String>>(2*_map43.size);
+          for (int _i44 = 0; _i44 < _map43.size; ++_i44)
+          {
+            String _key45; // required
+            Set<String> _val46; // optional
+            _key45 = iprot.readString();
+            {
+              org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet _set47 = new org.apache.blur.thirdparty.thrift_0_9_0.protocol.TSet(org.apache.blur.thirdparty.thrift_0_9_0.protocol.TType.STRING, iprot.readI32());
+              _val46 = new HashSet<String>(2*_set47.size);
+              for (int _i48 = 0; _i48 < _set47.size; ++_i48)
+              {
+                String _elem49; // required
+                _elem49 = iprot.readString();
+                _val46.add(_elem49);
+              }
+            }
+            struct.columnsToFetch.put(_key45, _val46);
+          }
+        }
+        struct.setColumnsToFetchIsSet(true);
+      }
+      if (incoming.get(6)) {
+        struct.allowStaleData = iprot.readBool();
+        struct.setAllowStaleDataIsSet(true);
+      }
+      if (incoming.get(7)) {
+        struct.startRecord = iprot.readI32();
+        struct.setStartRecordIsSet(true);
+      }
+      if (incoming.get(8)) {
+        struct.maxRecordsToFetch = iprot.readI32();
+        struct.setMaxRecordsToFetchIsSet(true);
+      }
+      if (incoming.get(9)) {
+        struct.highlightOptions = new HighlightOptions();
+        struct.highlightOptions.read(iprot);
+        struct.setHighlightOptionsIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/incubator-blur/blob/b0e26648/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ShardState.java
----------------------------------------------------------------------
diff --git a/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ShardState.java b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ShardState.java
new file mode 100644
index 0000000..b562898
--- /dev/null
+++ b/blur-thrift/src/main/java/org/apache/blur/thrift/generated/ShardState.java
@@ -0,0 +1,79 @@
+/**
+ * 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;
+
+/**
+ * See shardServerLayoutOptions method in the Blur service for details.
+ */
+public enum ShardState implements org.apache.blur.thirdparty.thrift_0_9_0.TEnum {
+  OPENING(0),
+  OPEN(1),
+  OPENING_ERROR(2),
+  CLOSING(3),
+  CLOSED(4),
+  CLOSING_ERROR(5);
+
+  private final int value;
+
+  private ShardState(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 ShardState findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return OPENING;
+      case 1:
+        return OPEN;
+      case 2:
+        return OPENING_ERROR;
+      case 3:
+        return CLOSING;
+      case 4:
+        return CLOSED;
+      case 5:
+        return CLOSING_ERROR;
+      default:
+        return null;
+    }
+  }
+}


Mime
View raw message