You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by vi...@apache.org on 2018/07/13 01:09:57 UTC

[22/51] [partial] hive git commit: HIVE-20097 : Convert standalone-metastore to a submodule (Alexander Kolbasov reviewed by Vihang Karajgaonkar)

http://git-wip-us.apache.org/repos/asf/hive/blob/20eb7b51/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeRequest.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeRequest.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeRequest.java
new file mode 100644
index 0000000..8f42847
--- /dev/null
+++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeRequest.java
@@ -0,0 +1,620 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.hadoop.hive.metastore.api;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+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 javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
+@org.apache.hadoop.classification.InterfaceAudience.Public @org.apache.hadoop.classification.InterfaceStability.Stable public class GrantRevokePrivilegeRequest implements org.apache.thrift.TBase<GrantRevokePrivilegeRequest, GrantRevokePrivilegeRequest._Fields>, java.io.Serializable, Cloneable, Comparable<GrantRevokePrivilegeRequest> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GrantRevokePrivilegeRequest");
+
+  private static final org.apache.thrift.protocol.TField REQUEST_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("requestType", org.apache.thrift.protocol.TType.I32, (short)1);
+  private static final org.apache.thrift.protocol.TField PRIVILEGES_FIELD_DESC = new org.apache.thrift.protocol.TField("privileges", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+  private static final org.apache.thrift.protocol.TField REVOKE_GRANT_OPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("revokeGrantOption", org.apache.thrift.protocol.TType.BOOL, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new GrantRevokePrivilegeRequestStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new GrantRevokePrivilegeRequestTupleSchemeFactory());
+  }
+
+  private GrantRevokeType requestType; // required
+  private PrivilegeBag privileges; // required
+  private boolean revokeGrantOption; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * 
+     * @see GrantRevokeType
+     */
+    REQUEST_TYPE((short)1, "requestType"),
+    PRIVILEGES((short)2, "privileges"),
+    REVOKE_GRANT_OPTION((short)3, "revokeGrantOption");
+
+    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: // REQUEST_TYPE
+          return REQUEST_TYPE;
+        case 2: // PRIVILEGES
+          return PRIVILEGES;
+        case 3: // REVOKE_GRANT_OPTION
+          return REVOKE_GRANT_OPTION;
+        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 __REVOKEGRANTOPTION_ISSET_ID = 0;
+  private byte __isset_bitfield = 0;
+  private static final _Fields optionals[] = {_Fields.REVOKE_GRANT_OPTION};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.REQUEST_TYPE, new org.apache.thrift.meta_data.FieldMetaData("requestType", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, GrantRevokeType.class)));
+    tmpMap.put(_Fields.PRIVILEGES, new org.apache.thrift.meta_data.FieldMetaData("privileges", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, PrivilegeBag.class)));
+    tmpMap.put(_Fields.REVOKE_GRANT_OPTION, new org.apache.thrift.meta_data.FieldMetaData("revokeGrantOption", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(GrantRevokePrivilegeRequest.class, metaDataMap);
+  }
+
+  public GrantRevokePrivilegeRequest() {
+  }
+
+  public GrantRevokePrivilegeRequest(
+    GrantRevokeType requestType,
+    PrivilegeBag privileges)
+  {
+    this();
+    this.requestType = requestType;
+    this.privileges = privileges;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public GrantRevokePrivilegeRequest(GrantRevokePrivilegeRequest other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetRequestType()) {
+      this.requestType = other.requestType;
+    }
+    if (other.isSetPrivileges()) {
+      this.privileges = new PrivilegeBag(other.privileges);
+    }
+    this.revokeGrantOption = other.revokeGrantOption;
+  }
+
+  public GrantRevokePrivilegeRequest deepCopy() {
+    return new GrantRevokePrivilegeRequest(this);
+  }
+
+  @Override
+  public void clear() {
+    this.requestType = null;
+    this.privileges = null;
+    setRevokeGrantOptionIsSet(false);
+    this.revokeGrantOption = false;
+  }
+
+  /**
+   * 
+   * @see GrantRevokeType
+   */
+  public GrantRevokeType getRequestType() {
+    return this.requestType;
+  }
+
+  /**
+   * 
+   * @see GrantRevokeType
+   */
+  public void setRequestType(GrantRevokeType requestType) {
+    this.requestType = requestType;
+  }
+
+  public void unsetRequestType() {
+    this.requestType = null;
+  }
+
+  /** Returns true if field requestType is set (has been assigned a value) and false otherwise */
+  public boolean isSetRequestType() {
+    return this.requestType != null;
+  }
+
+  public void setRequestTypeIsSet(boolean value) {
+    if (!value) {
+      this.requestType = null;
+    }
+  }
+
+  public PrivilegeBag getPrivileges() {
+    return this.privileges;
+  }
+
+  public void setPrivileges(PrivilegeBag privileges) {
+    this.privileges = privileges;
+  }
+
+  public void unsetPrivileges() {
+    this.privileges = null;
+  }
+
+  /** Returns true if field privileges is set (has been assigned a value) and false otherwise */
+  public boolean isSetPrivileges() {
+    return this.privileges != null;
+  }
+
+  public void setPrivilegesIsSet(boolean value) {
+    if (!value) {
+      this.privileges = null;
+    }
+  }
+
+  public boolean isRevokeGrantOption() {
+    return this.revokeGrantOption;
+  }
+
+  public void setRevokeGrantOption(boolean revokeGrantOption) {
+    this.revokeGrantOption = revokeGrantOption;
+    setRevokeGrantOptionIsSet(true);
+  }
+
+  public void unsetRevokeGrantOption() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __REVOKEGRANTOPTION_ISSET_ID);
+  }
+
+  /** Returns true if field revokeGrantOption is set (has been assigned a value) and false otherwise */
+  public boolean isSetRevokeGrantOption() {
+    return EncodingUtils.testBit(__isset_bitfield, __REVOKEGRANTOPTION_ISSET_ID);
+  }
+
+  public void setRevokeGrantOptionIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __REVOKEGRANTOPTION_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case REQUEST_TYPE:
+      if (value == null) {
+        unsetRequestType();
+      } else {
+        setRequestType((GrantRevokeType)value);
+      }
+      break;
+
+    case PRIVILEGES:
+      if (value == null) {
+        unsetPrivileges();
+      } else {
+        setPrivileges((PrivilegeBag)value);
+      }
+      break;
+
+    case REVOKE_GRANT_OPTION:
+      if (value == null) {
+        unsetRevokeGrantOption();
+      } else {
+        setRevokeGrantOption((Boolean)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case REQUEST_TYPE:
+      return getRequestType();
+
+    case PRIVILEGES:
+      return getPrivileges();
+
+    case REVOKE_GRANT_OPTION:
+      return isRevokeGrantOption();
+
+    }
+    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 REQUEST_TYPE:
+      return isSetRequestType();
+    case PRIVILEGES:
+      return isSetPrivileges();
+    case REVOKE_GRANT_OPTION:
+      return isSetRevokeGrantOption();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof GrantRevokePrivilegeRequest)
+      return this.equals((GrantRevokePrivilegeRequest)that);
+    return false;
+  }
+
+  public boolean equals(GrantRevokePrivilegeRequest that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_requestType = true && this.isSetRequestType();
+    boolean that_present_requestType = true && that.isSetRequestType();
+    if (this_present_requestType || that_present_requestType) {
+      if (!(this_present_requestType && that_present_requestType))
+        return false;
+      if (!this.requestType.equals(that.requestType))
+        return false;
+    }
+
+    boolean this_present_privileges = true && this.isSetPrivileges();
+    boolean that_present_privileges = true && that.isSetPrivileges();
+    if (this_present_privileges || that_present_privileges) {
+      if (!(this_present_privileges && that_present_privileges))
+        return false;
+      if (!this.privileges.equals(that.privileges))
+        return false;
+    }
+
+    boolean this_present_revokeGrantOption = true && this.isSetRevokeGrantOption();
+    boolean that_present_revokeGrantOption = true && that.isSetRevokeGrantOption();
+    if (this_present_revokeGrantOption || that_present_revokeGrantOption) {
+      if (!(this_present_revokeGrantOption && that_present_revokeGrantOption))
+        return false;
+      if (this.revokeGrantOption != that.revokeGrantOption)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_requestType = true && (isSetRequestType());
+    list.add(present_requestType);
+    if (present_requestType)
+      list.add(requestType.getValue());
+
+    boolean present_privileges = true && (isSetPrivileges());
+    list.add(present_privileges);
+    if (present_privileges)
+      list.add(privileges);
+
+    boolean present_revokeGrantOption = true && (isSetRevokeGrantOption());
+    list.add(present_revokeGrantOption);
+    if (present_revokeGrantOption)
+      list.add(revokeGrantOption);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(GrantRevokePrivilegeRequest other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetRequestType()).compareTo(other.isSetRequestType());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRequestType()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.requestType, other.requestType);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetPrivileges()).compareTo(other.isSetPrivileges());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetPrivileges()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.privileges, other.privileges);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRevokeGrantOption()).compareTo(other.isSetRevokeGrantOption());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRevokeGrantOption()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.revokeGrantOption, other.revokeGrantOption);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("GrantRevokePrivilegeRequest(");
+    boolean first = true;
+
+    sb.append("requestType:");
+    if (this.requestType == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.requestType);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("privileges:");
+    if (this.privileges == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.privileges);
+    }
+    first = false;
+    if (isSetRevokeGrantOption()) {
+      if (!first) sb.append(", ");
+      sb.append("revokeGrantOption:");
+      sb.append(this.revokeGrantOption);
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+    if (privileges != null) {
+      privileges.validate();
+    }
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class GrantRevokePrivilegeRequestStandardSchemeFactory implements SchemeFactory {
+    public GrantRevokePrivilegeRequestStandardScheme getScheme() {
+      return new GrantRevokePrivilegeRequestStandardScheme();
+    }
+  }
+
+  private static class GrantRevokePrivilegeRequestStandardScheme extends StandardScheme<GrantRevokePrivilegeRequest> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, GrantRevokePrivilegeRequest struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // REQUEST_TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.requestType = org.apache.hadoop.hive.metastore.api.GrantRevokeType.findByValue(iprot.readI32());
+              struct.setRequestTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // PRIVILEGES
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+              struct.privileges = new PrivilegeBag();
+              struct.privileges.read(iprot);
+              struct.setPrivilegesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // REVOKE_GRANT_OPTION
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.revokeGrantOption = iprot.readBool();
+              struct.setRevokeGrantOptionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, GrantRevokePrivilegeRequest struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.requestType != null) {
+        oprot.writeFieldBegin(REQUEST_TYPE_FIELD_DESC);
+        oprot.writeI32(struct.requestType.getValue());
+        oprot.writeFieldEnd();
+      }
+      if (struct.privileges != null) {
+        oprot.writeFieldBegin(PRIVILEGES_FIELD_DESC);
+        struct.privileges.write(oprot);
+        oprot.writeFieldEnd();
+      }
+      if (struct.isSetRevokeGrantOption()) {
+        oprot.writeFieldBegin(REVOKE_GRANT_OPTION_FIELD_DESC);
+        oprot.writeBool(struct.revokeGrantOption);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class GrantRevokePrivilegeRequestTupleSchemeFactory implements SchemeFactory {
+    public GrantRevokePrivilegeRequestTupleScheme getScheme() {
+      return new GrantRevokePrivilegeRequestTupleScheme();
+    }
+  }
+
+  private static class GrantRevokePrivilegeRequestTupleScheme extends TupleScheme<GrantRevokePrivilegeRequest> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, GrantRevokePrivilegeRequest struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetRequestType()) {
+        optionals.set(0);
+      }
+      if (struct.isSetPrivileges()) {
+        optionals.set(1);
+      }
+      if (struct.isSetRevokeGrantOption()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetRequestType()) {
+        oprot.writeI32(struct.requestType.getValue());
+      }
+      if (struct.isSetPrivileges()) {
+        struct.privileges.write(oprot);
+      }
+      if (struct.isSetRevokeGrantOption()) {
+        oprot.writeBool(struct.revokeGrantOption);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, GrantRevokePrivilegeRequest struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.requestType = org.apache.hadoop.hive.metastore.api.GrantRevokeType.findByValue(iprot.readI32());
+        struct.setRequestTypeIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.privileges = new PrivilegeBag();
+        struct.privileges.read(iprot);
+        struct.setPrivilegesIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.revokeGrantOption = iprot.readBool();
+        struct.setRevokeGrantOptionIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/hive/blob/20eb7b51/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeResponse.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeResponse.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeResponse.java
new file mode 100644
index 0000000..dc51bac
--- /dev/null
+++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokePrivilegeResponse.java
@@ -0,0 +1,390 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.hadoop.hive.metastore.api;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+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 javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
+@org.apache.hadoop.classification.InterfaceAudience.Public @org.apache.hadoop.classification.InterfaceStability.Stable public class GrantRevokePrivilegeResponse implements org.apache.thrift.TBase<GrantRevokePrivilegeResponse, GrantRevokePrivilegeResponse._Fields>, java.io.Serializable, Cloneable, Comparable<GrantRevokePrivilegeResponse> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GrantRevokePrivilegeResponse");
+
+  private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)1);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new GrantRevokePrivilegeResponseStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new GrantRevokePrivilegeResponseTupleSchemeFactory());
+  }
+
+  private boolean success; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    SUCCESS((short)1, "success");
+
+    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: // SUCCESS
+          return SUCCESS;
+        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 __SUCCESS_ISSET_ID = 0;
+  private byte __isset_bitfield = 0;
+  private static final _Fields optionals[] = {_Fields.SUCCESS};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(GrantRevokePrivilegeResponse.class, metaDataMap);
+  }
+
+  public GrantRevokePrivilegeResponse() {
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public GrantRevokePrivilegeResponse(GrantRevokePrivilegeResponse other) {
+    __isset_bitfield = other.__isset_bitfield;
+    this.success = other.success;
+  }
+
+  public GrantRevokePrivilegeResponse deepCopy() {
+    return new GrantRevokePrivilegeResponse(this);
+  }
+
+  @Override
+  public void clear() {
+    setSuccessIsSet(false);
+    this.success = false;
+  }
+
+  public boolean isSuccess() {
+    return this.success;
+  }
+
+  public void setSuccess(boolean success) {
+    this.success = success;
+    setSuccessIsSet(true);
+  }
+
+  public void unsetSuccess() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+  }
+
+  /** Returns true if field success is set (has been assigned a value) and false otherwise */
+  public boolean isSetSuccess() {
+    return EncodingUtils.testBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+  }
+
+  public void setSuccessIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SUCCESS_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case SUCCESS:
+      if (value == null) {
+        unsetSuccess();
+      } else {
+        setSuccess((Boolean)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case SUCCESS:
+      return isSuccess();
+
+    }
+    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 SUCCESS:
+      return isSetSuccess();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof GrantRevokePrivilegeResponse)
+      return this.equals((GrantRevokePrivilegeResponse)that);
+    return false;
+  }
+
+  public boolean equals(GrantRevokePrivilegeResponse that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_success = true && this.isSetSuccess();
+    boolean that_present_success = true && that.isSetSuccess();
+    if (this_present_success || that_present_success) {
+      if (!(this_present_success && that_present_success))
+        return false;
+      if (this.success != that.success)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_success = true && (isSetSuccess());
+    list.add(present_success);
+    if (present_success)
+      list.add(success);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(GrantRevokePrivilegeResponse other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetSuccess()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("GrantRevokePrivilegeResponse(");
+    boolean first = true;
+
+    if (isSetSuccess()) {
+      sb.append("success:");
+      sb.append(this.success);
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class GrantRevokePrivilegeResponseStandardSchemeFactory implements SchemeFactory {
+    public GrantRevokePrivilegeResponseStandardScheme getScheme() {
+      return new GrantRevokePrivilegeResponseStandardScheme();
+    }
+  }
+
+  private static class GrantRevokePrivilegeResponseStandardScheme extends StandardScheme<GrantRevokePrivilegeResponse> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, GrantRevokePrivilegeResponse struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // SUCCESS
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.success = iprot.readBool();
+              struct.setSuccessIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, GrantRevokePrivilegeResponse struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.isSetSuccess()) {
+        oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+        oprot.writeBool(struct.success);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class GrantRevokePrivilegeResponseTupleSchemeFactory implements SchemeFactory {
+    public GrantRevokePrivilegeResponseTupleScheme getScheme() {
+      return new GrantRevokePrivilegeResponseTupleScheme();
+    }
+  }
+
+  private static class GrantRevokePrivilegeResponseTupleScheme extends TupleScheme<GrantRevokePrivilegeResponse> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, GrantRevokePrivilegeResponse struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetSuccess()) {
+        optionals.set(0);
+      }
+      oprot.writeBitSet(optionals, 1);
+      if (struct.isSetSuccess()) {
+        oprot.writeBool(struct.success);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, GrantRevokePrivilegeResponse struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(1);
+      if (incoming.get(0)) {
+        struct.success = iprot.readBool();
+        struct.setSuccessIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/hive/blob/20eb7b51/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleRequest.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleRequest.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleRequest.java
new file mode 100644
index 0000000..0de3fb6
--- /dev/null
+++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleRequest.java
@@ -0,0 +1,1059 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.hadoop.hive.metastore.api;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+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 javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
+@org.apache.hadoop.classification.InterfaceAudience.Public @org.apache.hadoop.classification.InterfaceStability.Stable public class GrantRevokeRoleRequest implements org.apache.thrift.TBase<GrantRevokeRoleRequest, GrantRevokeRoleRequest._Fields>, java.io.Serializable, Cloneable, Comparable<GrantRevokeRoleRequest> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GrantRevokeRoleRequest");
+
+  private static final org.apache.thrift.protocol.TField REQUEST_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("requestType", org.apache.thrift.protocol.TType.I32, (short)1);
+  private static final org.apache.thrift.protocol.TField ROLE_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("roleName", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField PRINCIPAL_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("principalName", org.apache.thrift.protocol.TType.STRING, (short)3);
+  private static final org.apache.thrift.protocol.TField PRINCIPAL_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("principalType", org.apache.thrift.protocol.TType.I32, (short)4);
+  private static final org.apache.thrift.protocol.TField GRANTOR_FIELD_DESC = new org.apache.thrift.protocol.TField("grantor", org.apache.thrift.protocol.TType.STRING, (short)5);
+  private static final org.apache.thrift.protocol.TField GRANTOR_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("grantorType", org.apache.thrift.protocol.TType.I32, (short)6);
+  private static final org.apache.thrift.protocol.TField GRANT_OPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("grantOption", org.apache.thrift.protocol.TType.BOOL, (short)7);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new GrantRevokeRoleRequestStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new GrantRevokeRoleRequestTupleSchemeFactory());
+  }
+
+  private GrantRevokeType requestType; // required
+  private String roleName; // required
+  private String principalName; // required
+  private PrincipalType principalType; // required
+  private String grantor; // optional
+  private PrincipalType grantorType; // optional
+  private boolean grantOption; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * 
+     * @see GrantRevokeType
+     */
+    REQUEST_TYPE((short)1, "requestType"),
+    ROLE_NAME((short)2, "roleName"),
+    PRINCIPAL_NAME((short)3, "principalName"),
+    /**
+     * 
+     * @see PrincipalType
+     */
+    PRINCIPAL_TYPE((short)4, "principalType"),
+    GRANTOR((short)5, "grantor"),
+    /**
+     * 
+     * @see PrincipalType
+     */
+    GRANTOR_TYPE((short)6, "grantorType"),
+    GRANT_OPTION((short)7, "grantOption");
+
+    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: // REQUEST_TYPE
+          return REQUEST_TYPE;
+        case 2: // ROLE_NAME
+          return ROLE_NAME;
+        case 3: // PRINCIPAL_NAME
+          return PRINCIPAL_NAME;
+        case 4: // PRINCIPAL_TYPE
+          return PRINCIPAL_TYPE;
+        case 5: // GRANTOR
+          return GRANTOR;
+        case 6: // GRANTOR_TYPE
+          return GRANTOR_TYPE;
+        case 7: // GRANT_OPTION
+          return GRANT_OPTION;
+        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 __GRANTOPTION_ISSET_ID = 0;
+  private byte __isset_bitfield = 0;
+  private static final _Fields optionals[] = {_Fields.GRANTOR,_Fields.GRANTOR_TYPE,_Fields.GRANT_OPTION};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.REQUEST_TYPE, new org.apache.thrift.meta_data.FieldMetaData("requestType", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, GrantRevokeType.class)));
+    tmpMap.put(_Fields.ROLE_NAME, new org.apache.thrift.meta_data.FieldMetaData("roleName", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.PRINCIPAL_NAME, new org.apache.thrift.meta_data.FieldMetaData("principalName", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.PRINCIPAL_TYPE, new org.apache.thrift.meta_data.FieldMetaData("principalType", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, PrincipalType.class)));
+    tmpMap.put(_Fields.GRANTOR, new org.apache.thrift.meta_data.FieldMetaData("grantor", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.GRANTOR_TYPE, new org.apache.thrift.meta_data.FieldMetaData("grantorType", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, PrincipalType.class)));
+    tmpMap.put(_Fields.GRANT_OPTION, new org.apache.thrift.meta_data.FieldMetaData("grantOption", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(GrantRevokeRoleRequest.class, metaDataMap);
+  }
+
+  public GrantRevokeRoleRequest() {
+  }
+
+  public GrantRevokeRoleRequest(
+    GrantRevokeType requestType,
+    String roleName,
+    String principalName,
+    PrincipalType principalType)
+  {
+    this();
+    this.requestType = requestType;
+    this.roleName = roleName;
+    this.principalName = principalName;
+    this.principalType = principalType;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public GrantRevokeRoleRequest(GrantRevokeRoleRequest other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetRequestType()) {
+      this.requestType = other.requestType;
+    }
+    if (other.isSetRoleName()) {
+      this.roleName = other.roleName;
+    }
+    if (other.isSetPrincipalName()) {
+      this.principalName = other.principalName;
+    }
+    if (other.isSetPrincipalType()) {
+      this.principalType = other.principalType;
+    }
+    if (other.isSetGrantor()) {
+      this.grantor = other.grantor;
+    }
+    if (other.isSetGrantorType()) {
+      this.grantorType = other.grantorType;
+    }
+    this.grantOption = other.grantOption;
+  }
+
+  public GrantRevokeRoleRequest deepCopy() {
+    return new GrantRevokeRoleRequest(this);
+  }
+
+  @Override
+  public void clear() {
+    this.requestType = null;
+    this.roleName = null;
+    this.principalName = null;
+    this.principalType = null;
+    this.grantor = null;
+    this.grantorType = null;
+    setGrantOptionIsSet(false);
+    this.grantOption = false;
+  }
+
+  /**
+   * 
+   * @see GrantRevokeType
+   */
+  public GrantRevokeType getRequestType() {
+    return this.requestType;
+  }
+
+  /**
+   * 
+   * @see GrantRevokeType
+   */
+  public void setRequestType(GrantRevokeType requestType) {
+    this.requestType = requestType;
+  }
+
+  public void unsetRequestType() {
+    this.requestType = null;
+  }
+
+  /** Returns true if field requestType is set (has been assigned a value) and false otherwise */
+  public boolean isSetRequestType() {
+    return this.requestType != null;
+  }
+
+  public void setRequestTypeIsSet(boolean value) {
+    if (!value) {
+      this.requestType = null;
+    }
+  }
+
+  public String getRoleName() {
+    return this.roleName;
+  }
+
+  public void setRoleName(String roleName) {
+    this.roleName = roleName;
+  }
+
+  public void unsetRoleName() {
+    this.roleName = null;
+  }
+
+  /** Returns true if field roleName is set (has been assigned a value) and false otherwise */
+  public boolean isSetRoleName() {
+    return this.roleName != null;
+  }
+
+  public void setRoleNameIsSet(boolean value) {
+    if (!value) {
+      this.roleName = null;
+    }
+  }
+
+  public String getPrincipalName() {
+    return this.principalName;
+  }
+
+  public void setPrincipalName(String principalName) {
+    this.principalName = principalName;
+  }
+
+  public void unsetPrincipalName() {
+    this.principalName = null;
+  }
+
+  /** Returns true if field principalName is set (has been assigned a value) and false otherwise */
+  public boolean isSetPrincipalName() {
+    return this.principalName != null;
+  }
+
+  public void setPrincipalNameIsSet(boolean value) {
+    if (!value) {
+      this.principalName = null;
+    }
+  }
+
+  /**
+   * 
+   * @see PrincipalType
+   */
+  public PrincipalType getPrincipalType() {
+    return this.principalType;
+  }
+
+  /**
+   * 
+   * @see PrincipalType
+   */
+  public void setPrincipalType(PrincipalType principalType) {
+    this.principalType = principalType;
+  }
+
+  public void unsetPrincipalType() {
+    this.principalType = null;
+  }
+
+  /** Returns true if field principalType is set (has been assigned a value) and false otherwise */
+  public boolean isSetPrincipalType() {
+    return this.principalType != null;
+  }
+
+  public void setPrincipalTypeIsSet(boolean value) {
+    if (!value) {
+      this.principalType = null;
+    }
+  }
+
+  public String getGrantor() {
+    return this.grantor;
+  }
+
+  public void setGrantor(String grantor) {
+    this.grantor = grantor;
+  }
+
+  public void unsetGrantor() {
+    this.grantor = null;
+  }
+
+  /** Returns true if field grantor is set (has been assigned a value) and false otherwise */
+  public boolean isSetGrantor() {
+    return this.grantor != null;
+  }
+
+  public void setGrantorIsSet(boolean value) {
+    if (!value) {
+      this.grantor = null;
+    }
+  }
+
+  /**
+   * 
+   * @see PrincipalType
+   */
+  public PrincipalType getGrantorType() {
+    return this.grantorType;
+  }
+
+  /**
+   * 
+   * @see PrincipalType
+   */
+  public void setGrantorType(PrincipalType grantorType) {
+    this.grantorType = grantorType;
+  }
+
+  public void unsetGrantorType() {
+    this.grantorType = null;
+  }
+
+  /** Returns true if field grantorType is set (has been assigned a value) and false otherwise */
+  public boolean isSetGrantorType() {
+    return this.grantorType != null;
+  }
+
+  public void setGrantorTypeIsSet(boolean value) {
+    if (!value) {
+      this.grantorType = null;
+    }
+  }
+
+  public boolean isGrantOption() {
+    return this.grantOption;
+  }
+
+  public void setGrantOption(boolean grantOption) {
+    this.grantOption = grantOption;
+    setGrantOptionIsSet(true);
+  }
+
+  public void unsetGrantOption() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __GRANTOPTION_ISSET_ID);
+  }
+
+  /** Returns true if field grantOption is set (has been assigned a value) and false otherwise */
+  public boolean isSetGrantOption() {
+    return EncodingUtils.testBit(__isset_bitfield, __GRANTOPTION_ISSET_ID);
+  }
+
+  public void setGrantOptionIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __GRANTOPTION_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case REQUEST_TYPE:
+      if (value == null) {
+        unsetRequestType();
+      } else {
+        setRequestType((GrantRevokeType)value);
+      }
+      break;
+
+    case ROLE_NAME:
+      if (value == null) {
+        unsetRoleName();
+      } else {
+        setRoleName((String)value);
+      }
+      break;
+
+    case PRINCIPAL_NAME:
+      if (value == null) {
+        unsetPrincipalName();
+      } else {
+        setPrincipalName((String)value);
+      }
+      break;
+
+    case PRINCIPAL_TYPE:
+      if (value == null) {
+        unsetPrincipalType();
+      } else {
+        setPrincipalType((PrincipalType)value);
+      }
+      break;
+
+    case GRANTOR:
+      if (value == null) {
+        unsetGrantor();
+      } else {
+        setGrantor((String)value);
+      }
+      break;
+
+    case GRANTOR_TYPE:
+      if (value == null) {
+        unsetGrantorType();
+      } else {
+        setGrantorType((PrincipalType)value);
+      }
+      break;
+
+    case GRANT_OPTION:
+      if (value == null) {
+        unsetGrantOption();
+      } else {
+        setGrantOption((Boolean)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case REQUEST_TYPE:
+      return getRequestType();
+
+    case ROLE_NAME:
+      return getRoleName();
+
+    case PRINCIPAL_NAME:
+      return getPrincipalName();
+
+    case PRINCIPAL_TYPE:
+      return getPrincipalType();
+
+    case GRANTOR:
+      return getGrantor();
+
+    case GRANTOR_TYPE:
+      return getGrantorType();
+
+    case GRANT_OPTION:
+      return isGrantOption();
+
+    }
+    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 REQUEST_TYPE:
+      return isSetRequestType();
+    case ROLE_NAME:
+      return isSetRoleName();
+    case PRINCIPAL_NAME:
+      return isSetPrincipalName();
+    case PRINCIPAL_TYPE:
+      return isSetPrincipalType();
+    case GRANTOR:
+      return isSetGrantor();
+    case GRANTOR_TYPE:
+      return isSetGrantorType();
+    case GRANT_OPTION:
+      return isSetGrantOption();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof GrantRevokeRoleRequest)
+      return this.equals((GrantRevokeRoleRequest)that);
+    return false;
+  }
+
+  public boolean equals(GrantRevokeRoleRequest that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_requestType = true && this.isSetRequestType();
+    boolean that_present_requestType = true && that.isSetRequestType();
+    if (this_present_requestType || that_present_requestType) {
+      if (!(this_present_requestType && that_present_requestType))
+        return false;
+      if (!this.requestType.equals(that.requestType))
+        return false;
+    }
+
+    boolean this_present_roleName = true && this.isSetRoleName();
+    boolean that_present_roleName = true && that.isSetRoleName();
+    if (this_present_roleName || that_present_roleName) {
+      if (!(this_present_roleName && that_present_roleName))
+        return false;
+      if (!this.roleName.equals(that.roleName))
+        return false;
+    }
+
+    boolean this_present_principalName = true && this.isSetPrincipalName();
+    boolean that_present_principalName = true && that.isSetPrincipalName();
+    if (this_present_principalName || that_present_principalName) {
+      if (!(this_present_principalName && that_present_principalName))
+        return false;
+      if (!this.principalName.equals(that.principalName))
+        return false;
+    }
+
+    boolean this_present_principalType = true && this.isSetPrincipalType();
+    boolean that_present_principalType = true && that.isSetPrincipalType();
+    if (this_present_principalType || that_present_principalType) {
+      if (!(this_present_principalType && that_present_principalType))
+        return false;
+      if (!this.principalType.equals(that.principalType))
+        return false;
+    }
+
+    boolean this_present_grantor = true && this.isSetGrantor();
+    boolean that_present_grantor = true && that.isSetGrantor();
+    if (this_present_grantor || that_present_grantor) {
+      if (!(this_present_grantor && that_present_grantor))
+        return false;
+      if (!this.grantor.equals(that.grantor))
+        return false;
+    }
+
+    boolean this_present_grantorType = true && this.isSetGrantorType();
+    boolean that_present_grantorType = true && that.isSetGrantorType();
+    if (this_present_grantorType || that_present_grantorType) {
+      if (!(this_present_grantorType && that_present_grantorType))
+        return false;
+      if (!this.grantorType.equals(that.grantorType))
+        return false;
+    }
+
+    boolean this_present_grantOption = true && this.isSetGrantOption();
+    boolean that_present_grantOption = true && that.isSetGrantOption();
+    if (this_present_grantOption || that_present_grantOption) {
+      if (!(this_present_grantOption && that_present_grantOption))
+        return false;
+      if (this.grantOption != that.grantOption)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_requestType = true && (isSetRequestType());
+    list.add(present_requestType);
+    if (present_requestType)
+      list.add(requestType.getValue());
+
+    boolean present_roleName = true && (isSetRoleName());
+    list.add(present_roleName);
+    if (present_roleName)
+      list.add(roleName);
+
+    boolean present_principalName = true && (isSetPrincipalName());
+    list.add(present_principalName);
+    if (present_principalName)
+      list.add(principalName);
+
+    boolean present_principalType = true && (isSetPrincipalType());
+    list.add(present_principalType);
+    if (present_principalType)
+      list.add(principalType.getValue());
+
+    boolean present_grantor = true && (isSetGrantor());
+    list.add(present_grantor);
+    if (present_grantor)
+      list.add(grantor);
+
+    boolean present_grantorType = true && (isSetGrantorType());
+    list.add(present_grantorType);
+    if (present_grantorType)
+      list.add(grantorType.getValue());
+
+    boolean present_grantOption = true && (isSetGrantOption());
+    list.add(present_grantOption);
+    if (present_grantOption)
+      list.add(grantOption);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(GrantRevokeRoleRequest other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetRequestType()).compareTo(other.isSetRequestType());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRequestType()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.requestType, other.requestType);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetRoleName()).compareTo(other.isSetRoleName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetRoleName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.roleName, other.roleName);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetPrincipalName()).compareTo(other.isSetPrincipalName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetPrincipalName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principalName, other.principalName);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetPrincipalType()).compareTo(other.isSetPrincipalType());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetPrincipalType()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.principalType, other.principalType);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetGrantor()).compareTo(other.isSetGrantor());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetGrantor()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.grantor, other.grantor);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetGrantorType()).compareTo(other.isSetGrantorType());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetGrantorType()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.grantorType, other.grantorType);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetGrantOption()).compareTo(other.isSetGrantOption());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetGrantOption()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.grantOption, other.grantOption);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("GrantRevokeRoleRequest(");
+    boolean first = true;
+
+    sb.append("requestType:");
+    if (this.requestType == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.requestType);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("roleName:");
+    if (this.roleName == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.roleName);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("principalName:");
+    if (this.principalName == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.principalName);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("principalType:");
+    if (this.principalType == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.principalType);
+    }
+    first = false;
+    if (isSetGrantor()) {
+      if (!first) sb.append(", ");
+      sb.append("grantor:");
+      if (this.grantor == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.grantor);
+      }
+      first = false;
+    }
+    if (isSetGrantorType()) {
+      if (!first) sb.append(", ");
+      sb.append("grantorType:");
+      if (this.grantorType == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.grantorType);
+      }
+      first = false;
+    }
+    if (isSetGrantOption()) {
+      if (!first) sb.append(", ");
+      sb.append("grantOption:");
+      sb.append(this.grantOption);
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class GrantRevokeRoleRequestStandardSchemeFactory implements SchemeFactory {
+    public GrantRevokeRoleRequestStandardScheme getScheme() {
+      return new GrantRevokeRoleRequestStandardScheme();
+    }
+  }
+
+  private static class GrantRevokeRoleRequestStandardScheme extends StandardScheme<GrantRevokeRoleRequest> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, GrantRevokeRoleRequest struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // REQUEST_TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.requestType = org.apache.hadoop.hive.metastore.api.GrantRevokeType.findByValue(iprot.readI32());
+              struct.setRequestTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // ROLE_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.roleName = iprot.readString();
+              struct.setRoleNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // PRINCIPAL_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.principalName = iprot.readString();
+              struct.setPrincipalNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // PRINCIPAL_TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.principalType = org.apache.hadoop.hive.metastore.api.PrincipalType.findByValue(iprot.readI32());
+              struct.setPrincipalTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // GRANTOR
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.grantor = iprot.readString();
+              struct.setGrantorIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 6: // GRANTOR_TYPE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.grantorType = org.apache.hadoop.hive.metastore.api.PrincipalType.findByValue(iprot.readI32());
+              struct.setGrantorTypeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 7: // GRANT_OPTION
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.grantOption = iprot.readBool();
+              struct.setGrantOptionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, GrantRevokeRoleRequest struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.requestType != null) {
+        oprot.writeFieldBegin(REQUEST_TYPE_FIELD_DESC);
+        oprot.writeI32(struct.requestType.getValue());
+        oprot.writeFieldEnd();
+      }
+      if (struct.roleName != null) {
+        oprot.writeFieldBegin(ROLE_NAME_FIELD_DESC);
+        oprot.writeString(struct.roleName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.principalName != null) {
+        oprot.writeFieldBegin(PRINCIPAL_NAME_FIELD_DESC);
+        oprot.writeString(struct.principalName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.principalType != null) {
+        oprot.writeFieldBegin(PRINCIPAL_TYPE_FIELD_DESC);
+        oprot.writeI32(struct.principalType.getValue());
+        oprot.writeFieldEnd();
+      }
+      if (struct.grantor != null) {
+        if (struct.isSetGrantor()) {
+          oprot.writeFieldBegin(GRANTOR_FIELD_DESC);
+          oprot.writeString(struct.grantor);
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.grantorType != null) {
+        if (struct.isSetGrantorType()) {
+          oprot.writeFieldBegin(GRANTOR_TYPE_FIELD_DESC);
+          oprot.writeI32(struct.grantorType.getValue());
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.isSetGrantOption()) {
+        oprot.writeFieldBegin(GRANT_OPTION_FIELD_DESC);
+        oprot.writeBool(struct.grantOption);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class GrantRevokeRoleRequestTupleSchemeFactory implements SchemeFactory {
+    public GrantRevokeRoleRequestTupleScheme getScheme() {
+      return new GrantRevokeRoleRequestTupleScheme();
+    }
+  }
+
+  private static class GrantRevokeRoleRequestTupleScheme extends TupleScheme<GrantRevokeRoleRequest> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, GrantRevokeRoleRequest struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetRequestType()) {
+        optionals.set(0);
+      }
+      if (struct.isSetRoleName()) {
+        optionals.set(1);
+      }
+      if (struct.isSetPrincipalName()) {
+        optionals.set(2);
+      }
+      if (struct.isSetPrincipalType()) {
+        optionals.set(3);
+      }
+      if (struct.isSetGrantor()) {
+        optionals.set(4);
+      }
+      if (struct.isSetGrantorType()) {
+        optionals.set(5);
+      }
+      if (struct.isSetGrantOption()) {
+        optionals.set(6);
+      }
+      oprot.writeBitSet(optionals, 7);
+      if (struct.isSetRequestType()) {
+        oprot.writeI32(struct.requestType.getValue());
+      }
+      if (struct.isSetRoleName()) {
+        oprot.writeString(struct.roleName);
+      }
+      if (struct.isSetPrincipalName()) {
+        oprot.writeString(struct.principalName);
+      }
+      if (struct.isSetPrincipalType()) {
+        oprot.writeI32(struct.principalType.getValue());
+      }
+      if (struct.isSetGrantor()) {
+        oprot.writeString(struct.grantor);
+      }
+      if (struct.isSetGrantorType()) {
+        oprot.writeI32(struct.grantorType.getValue());
+      }
+      if (struct.isSetGrantOption()) {
+        oprot.writeBool(struct.grantOption);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, GrantRevokeRoleRequest struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(7);
+      if (incoming.get(0)) {
+        struct.requestType = org.apache.hadoop.hive.metastore.api.GrantRevokeType.findByValue(iprot.readI32());
+        struct.setRequestTypeIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.roleName = iprot.readString();
+        struct.setRoleNameIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.principalName = iprot.readString();
+        struct.setPrincipalNameIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.principalType = org.apache.hadoop.hive.metastore.api.PrincipalType.findByValue(iprot.readI32());
+        struct.setPrincipalTypeIsSet(true);
+      }
+      if (incoming.get(4)) {
+        struct.grantor = iprot.readString();
+        struct.setGrantorIsSet(true);
+      }
+      if (incoming.get(5)) {
+        struct.grantorType = org.apache.hadoop.hive.metastore.api.PrincipalType.findByValue(iprot.readI32());
+        struct.setGrantorTypeIsSet(true);
+      }
+      if (incoming.get(6)) {
+        struct.grantOption = iprot.readBool();
+        struct.setGrantOptionIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/hive/blob/20eb7b51/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleResponse.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleResponse.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleResponse.java
new file mode 100644
index 0000000..0602f1d
--- /dev/null
+++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeRoleResponse.java
@@ -0,0 +1,390 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.hadoop.hive.metastore.api;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+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 javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
+@org.apache.hadoop.classification.InterfaceAudience.Public @org.apache.hadoop.classification.InterfaceStability.Stable public class GrantRevokeRoleResponse implements org.apache.thrift.TBase<GrantRevokeRoleResponse, GrantRevokeRoleResponse._Fields>, java.io.Serializable, Cloneable, Comparable<GrantRevokeRoleResponse> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GrantRevokeRoleResponse");
+
+  private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)1);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new GrantRevokeRoleResponseStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new GrantRevokeRoleResponseTupleSchemeFactory());
+  }
+
+  private boolean success; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    SUCCESS((short)1, "success");
+
+    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: // SUCCESS
+          return SUCCESS;
+        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 __SUCCESS_ISSET_ID = 0;
+  private byte __isset_bitfield = 0;
+  private static final _Fields optionals[] = {_Fields.SUCCESS};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(GrantRevokeRoleResponse.class, metaDataMap);
+  }
+
+  public GrantRevokeRoleResponse() {
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public GrantRevokeRoleResponse(GrantRevokeRoleResponse other) {
+    __isset_bitfield = other.__isset_bitfield;
+    this.success = other.success;
+  }
+
+  public GrantRevokeRoleResponse deepCopy() {
+    return new GrantRevokeRoleResponse(this);
+  }
+
+  @Override
+  public void clear() {
+    setSuccessIsSet(false);
+    this.success = false;
+  }
+
+  public boolean isSuccess() {
+    return this.success;
+  }
+
+  public void setSuccess(boolean success) {
+    this.success = success;
+    setSuccessIsSet(true);
+  }
+
+  public void unsetSuccess() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+  }
+
+  /** Returns true if field success is set (has been assigned a value) and false otherwise */
+  public boolean isSetSuccess() {
+    return EncodingUtils.testBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+  }
+
+  public void setSuccessIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SUCCESS_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case SUCCESS:
+      if (value == null) {
+        unsetSuccess();
+      } else {
+        setSuccess((Boolean)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case SUCCESS:
+      return isSuccess();
+
+    }
+    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 SUCCESS:
+      return isSetSuccess();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof GrantRevokeRoleResponse)
+      return this.equals((GrantRevokeRoleResponse)that);
+    return false;
+  }
+
+  public boolean equals(GrantRevokeRoleResponse that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_success = true && this.isSetSuccess();
+    boolean that_present_success = true && that.isSetSuccess();
+    if (this_present_success || that_present_success) {
+      if (!(this_present_success && that_present_success))
+        return false;
+      if (this.success != that.success)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_success = true && (isSetSuccess());
+    list.add(present_success);
+    if (present_success)
+      list.add(success);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(GrantRevokeRoleResponse other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetSuccess()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("GrantRevokeRoleResponse(");
+    boolean first = true;
+
+    if (isSetSuccess()) {
+      sb.append("success:");
+      sb.append(this.success);
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class GrantRevokeRoleResponseStandardSchemeFactory implements SchemeFactory {
+    public GrantRevokeRoleResponseStandardScheme getScheme() {
+      return new GrantRevokeRoleResponseStandardScheme();
+    }
+  }
+
+  private static class GrantRevokeRoleResponseStandardScheme extends StandardScheme<GrantRevokeRoleResponse> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, GrantRevokeRoleResponse struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // SUCCESS
+            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+              struct.success = iprot.readBool();
+              struct.setSuccessIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, GrantRevokeRoleResponse struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.isSetSuccess()) {
+        oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+        oprot.writeBool(struct.success);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class GrantRevokeRoleResponseTupleSchemeFactory implements SchemeFactory {
+    public GrantRevokeRoleResponseTupleScheme getScheme() {
+      return new GrantRevokeRoleResponseTupleScheme();
+    }
+  }
+
+  private static class GrantRevokeRoleResponseTupleScheme extends TupleScheme<GrantRevokeRoleResponse> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, GrantRevokeRoleResponse struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetSuccess()) {
+        optionals.set(0);
+      }
+      oprot.writeBitSet(optionals, 1);
+      if (struct.isSetSuccess()) {
+        oprot.writeBool(struct.success);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, GrantRevokeRoleResponse struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(1);
+      if (incoming.get(0)) {
+        struct.success = iprot.readBool();
+        struct.setSuccessIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/hive/blob/20eb7b51/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeType.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeType.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeType.java
new file mode 100644
index 0000000..ac65ec7
--- /dev/null
+++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/GrantRevokeType.java
@@ -0,0 +1,45 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.hadoop.hive.metastore.api;
+
+
+import java.util.Map;
+import java.util.HashMap;
+import org.apache.thrift.TEnum;
+
+public enum GrantRevokeType implements org.apache.thrift.TEnum {
+  GRANT(1),
+  REVOKE(2);
+
+  private final int value;
+
+  private GrantRevokeType(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 GrantRevokeType findByValue(int value) { 
+    switch (value) {
+      case 1:
+        return GRANT;
+      case 2:
+        return REVOKE;
+      default:
+        return null;
+    }
+  }
+}