You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2013/08/21 07:04:22 UTC

svn commit: r1516084 [2/43] - in /hbase/trunk: ./ hbase-client/src/main/java/org/apache/hadoop/hbase/ hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ hbase-common/src/test/java/org/apache/hadoop/hbase/ hbase-protocol/src/main/java/org/apac...

Modified: hbase/trunk/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/AccessControlProtos.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/AccessControlProtos.java?rev=1516084&r1=1516083&r2=1516084&view=diff
==============================================================================
--- hbase/trunk/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/AccessControlProtos.java (original)
+++ hbase/trunk/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/AccessControlProtos.java Wed Aug 21 05:04:20 2013
@@ -10,72 +10,250 @@ public final class AccessControlProtos {
   }
   public interface PermissionOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
-    
+
     // required .Permission.Type type = 1;
+    /**
+     * <code>required .Permission.Type type = 1;</code>
+     */
     boolean hasType();
+    /**
+     * <code>required .Permission.Type type = 1;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type getType();
-    
+
     // optional .GlobalPermission global_permission = 2;
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     boolean hasGlobalPermission();
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission getGlobalPermission();
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermissionOrBuilder getGlobalPermissionOrBuilder();
-    
+
     // optional .NamespacePermission namespace_permission = 3;
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     boolean hasNamespacePermission();
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission getNamespacePermission();
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermissionOrBuilder getNamespacePermissionOrBuilder();
-    
+
     // optional .TablePermission table_permission = 4;
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     boolean hasTablePermission();
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission getTablePermission();
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder getTablePermissionOrBuilder();
   }
+  /**
+   * Protobuf type {@code Permission}
+   */
   public static final class Permission extends
       com.google.protobuf.GeneratedMessage
       implements PermissionOrBuilder {
     // Use Permission.newBuilder() to construct.
-    private Permission(Builder builder) {
+    private Permission(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Permission(boolean noInit) {}
-    
+    private Permission(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
     private static final Permission defaultInstance;
     public static Permission getDefaultInstance() {
       return defaultInstance;
     }
-    
+
     public Permission getDefaultInstanceForType() {
       return defaultInstance;
     }
-    
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
+    @java.lang.Override
+    public final com.google.protobuf.UnknownFieldSet
+        getUnknownFields() {
+      return this.unknownFields;
+    }
+    private Permission(
+        com.google.protobuf.CodedInputStream input,
+        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+        throws com.google.protobuf.InvalidProtocolBufferException {
+      initFields();
+      int mutable_bitField0_ = 0;
+      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
+          com.google.protobuf.UnknownFieldSet.newBuilder();
+      try {
+        boolean done = false;
+        while (!done) {
+          int tag = input.readTag();
+          switch (tag) {
+            case 0:
+              done = true;
+              break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
+            case 8: {
+              int rawValue = input.readEnum();
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.valueOf(rawValue);
+              if (value == null) {
+                unknownFields.mergeVarintField(1, rawValue);
+              } else {
+                bitField0_ |= 0x00000001;
+                type_ = value;
+              }
+              break;
+            }
+            case 18: {
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder subBuilder = null;
+              if (((bitField0_ & 0x00000002) == 0x00000002)) {
+                subBuilder = globalPermission_.toBuilder();
+              }
+              globalPermission_ = input.readMessage(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.PARSER, extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(globalPermission_);
+                globalPermission_ = subBuilder.buildPartial();
+              }
+              bitField0_ |= 0x00000002;
+              break;
+            }
+            case 26: {
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder subBuilder = null;
+              if (((bitField0_ & 0x00000004) == 0x00000004)) {
+                subBuilder = namespacePermission_.toBuilder();
+              }
+              namespacePermission_ = input.readMessage(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.PARSER, extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(namespacePermission_);
+                namespacePermission_ = subBuilder.buildPartial();
+              }
+              bitField0_ |= 0x00000004;
+              break;
+            }
+            case 34: {
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder subBuilder = null;
+              if (((bitField0_ & 0x00000008) == 0x00000008)) {
+                subBuilder = tablePermission_.toBuilder();
+              }
+              tablePermission_ = input.readMessage(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.PARSER, extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(tablePermission_);
+                tablePermission_ = subBuilder.buildPartial();
+              }
+              bitField0_ |= 0x00000008;
+              break;
+            }
+          }
+        }
+      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+        throw e.setUnfinishedMessage(this);
+      } catch (java.io.IOException e) {
+        throw new com.google.protobuf.InvalidProtocolBufferException(
+            e.getMessage()).setUnfinishedMessage(this);
+      } finally {
+        this.unknownFields = unknownFields.build();
+        makeExtensionsImmutable();
+      }
+    }
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
       return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_descriptor;
     }
-    
+
     protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_fieldAccessorTable;
+      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_fieldAccessorTable
+          .ensureFieldAccessorsInitialized(
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.class, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Builder.class);
+    }
+
+    public static com.google.protobuf.Parser<Permission> PARSER =
+        new com.google.protobuf.AbstractParser<Permission>() {
+      public Permission parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Permission(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Permission> getParserForType() {
+      return PARSER;
     }
-    
+
+    /**
+     * Protobuf enum {@code Permission.Action}
+     */
     public enum Action
         implements com.google.protobuf.ProtocolMessageEnum {
+      /**
+       * <code>READ = 0;</code>
+       */
       READ(0, 0),
+      /**
+       * <code>WRITE = 1;</code>
+       */
       WRITE(1, 1),
+      /**
+       * <code>EXEC = 2;</code>
+       */
       EXEC(2, 2),
+      /**
+       * <code>CREATE = 3;</code>
+       */
       CREATE(3, 3),
+      /**
+       * <code>ADMIN = 4;</code>
+       */
       ADMIN(4, 4),
       ;
-      
+
+      /**
+       * <code>READ = 0;</code>
+       */
       public static final int READ_VALUE = 0;
+      /**
+       * <code>WRITE = 1;</code>
+       */
       public static final int WRITE_VALUE = 1;
+      /**
+       * <code>EXEC = 2;</code>
+       */
       public static final int EXEC_VALUE = 2;
+      /**
+       * <code>CREATE = 3;</code>
+       */
       public static final int CREATE_VALUE = 3;
+      /**
+       * <code>ADMIN = 4;</code>
+       */
       public static final int ADMIN_VALUE = 4;
-      
-      
+
+
       public final int getNumber() { return value; }
-      
+
       public static Action valueOf(int value) {
         switch (value) {
           case 0: return READ;
@@ -86,7 +264,7 @@ public final class AccessControlProtos {
           default: return null;
         }
       }
-      
+
       public static com.google.protobuf.Internal.EnumLiteMap<Action>
           internalGetValueMap() {
         return internalValueMap;
@@ -98,7 +276,7 @@ public final class AccessControlProtos {
                 return Action.valueOf(number);
               }
             };
-      
+
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
         return getDescriptor().getValues().get(index);
@@ -111,11 +289,9 @@ public final class AccessControlProtos {
           getDescriptor() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.getDescriptor().getEnumTypes().get(0);
       }
-      
-      private static final Action[] VALUES = {
-        READ, WRITE, EXEC, CREATE, ADMIN, 
-      };
-      
+
+      private static final Action[] VALUES = values();
+
       public static Action valueOf(
           com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
         if (desc.getType() != getDescriptor()) {
@@ -124,32 +300,53 @@ public final class AccessControlProtos {
         }
         return VALUES[desc.getIndex()];
       }
-      
+
       private final int index;
       private final int value;
-      
+
       private Action(int index, int value) {
         this.index = index;
         this.value = value;
       }
-      
+
       // @@protoc_insertion_point(enum_scope:Permission.Action)
     }
-    
+
+    /**
+     * Protobuf enum {@code Permission.Type}
+     */
     public enum Type
         implements com.google.protobuf.ProtocolMessageEnum {
+      /**
+       * <code>Global = 1;</code>
+       */
       Global(0, 1),
+      /**
+       * <code>Namespace = 2;</code>
+       */
       Namespace(1, 2),
+      /**
+       * <code>Table = 3;</code>
+       */
       Table(2, 3),
       ;
-      
+
+      /**
+       * <code>Global = 1;</code>
+       */
       public static final int Global_VALUE = 1;
+      /**
+       * <code>Namespace = 2;</code>
+       */
       public static final int Namespace_VALUE = 2;
+      /**
+       * <code>Table = 3;</code>
+       */
       public static final int Table_VALUE = 3;
-      
-      
+
+
       public final int getNumber() { return value; }
-      
+
       public static Type valueOf(int value) {
         switch (value) {
           case 1: return Global;
@@ -158,7 +355,7 @@ public final class AccessControlProtos {
           default: return null;
         }
       }
-      
+
       public static com.google.protobuf.Internal.EnumLiteMap<Type>
           internalGetValueMap() {
         return internalValueMap;
@@ -170,7 +367,7 @@ public final class AccessControlProtos {
                 return Type.valueOf(number);
               }
             };
-      
+
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
         return getDescriptor().getValues().get(index);
@@ -183,11 +380,9 @@ public final class AccessControlProtos {
           getDescriptor() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.getDescriptor().getEnumTypes().get(1);
       }
-      
-      private static final Type[] VALUES = {
-        Global, Namespace, Table, 
-      };
-      
+
+      private static final Type[] VALUES = values();
+
       public static Type valueOf(
           com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
         if (desc.getType() != getDescriptor()) {
@@ -196,68 +391,101 @@ public final class AccessControlProtos {
         }
         return VALUES[desc.getIndex()];
       }
-      
+
       private final int index;
       private final int value;
-      
+
       private Type(int index, int value) {
         this.index = index;
         this.value = value;
       }
-      
+
       // @@protoc_insertion_point(enum_scope:Permission.Type)
     }
-    
+
     private int bitField0_;
     // required .Permission.Type type = 1;
     public static final int TYPE_FIELD_NUMBER = 1;
     private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type type_;
+    /**
+     * <code>required .Permission.Type type = 1;</code>
+     */
     public boolean hasType() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
+    /**
+     * <code>required .Permission.Type type = 1;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type getType() {
       return type_;
     }
-    
+
     // optional .GlobalPermission global_permission = 2;
     public static final int GLOBAL_PERMISSION_FIELD_NUMBER = 2;
     private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission globalPermission_;
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     public boolean hasGlobalPermission() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission getGlobalPermission() {
       return globalPermission_;
     }
+    /**
+     * <code>optional .GlobalPermission global_permission = 2;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermissionOrBuilder getGlobalPermissionOrBuilder() {
       return globalPermission_;
     }
-    
+
     // optional .NamespacePermission namespace_permission = 3;
     public static final int NAMESPACE_PERMISSION_FIELD_NUMBER = 3;
     private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission namespacePermission_;
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     public boolean hasNamespacePermission() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission getNamespacePermission() {
       return namespacePermission_;
     }
+    /**
+     * <code>optional .NamespacePermission namespace_permission = 3;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermissionOrBuilder getNamespacePermissionOrBuilder() {
       return namespacePermission_;
     }
-    
+
     // optional .TablePermission table_permission = 4;
     public static final int TABLE_PERMISSION_FIELD_NUMBER = 4;
     private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission tablePermission_;
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     public boolean hasTablePermission() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission getTablePermission() {
       return tablePermission_;
     }
+    /**
+     * <code>optional .TablePermission table_permission = 4;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder getTablePermissionOrBuilder() {
       return tablePermission_;
     }
-    
+
     private void initFields() {
       type_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.Global;
       globalPermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.getDefaultInstance();
@@ -268,7 +496,7 @@ public final class AccessControlProtos {
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
       if (isInitialized != -1) return isInitialized == 1;
-      
+
       if (!hasType()) {
         memoizedIsInitialized = 0;
         return false;
@@ -282,7 +510,7 @@ public final class AccessControlProtos {
       memoizedIsInitialized = 1;
       return true;
     }
-    
+
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
       getSerializedSize();
@@ -300,12 +528,12 @@ public final class AccessControlProtos {
       }
       getUnknownFields().writeTo(output);
     }
-    
+
     private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
       int size = memoizedSerializedSize;
       if (size != -1) return size;
-    
+
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
@@ -327,14 +555,14 @@ public final class AccessControlProtos {
       memoizedSerializedSize = size;
       return size;
     }
-    
+
     private static final long serialVersionUID = 0L;
     @java.lang.Override
     protected java.lang.Object writeReplace()
         throws java.io.ObjectStreamException {
       return super.writeReplace();
     }
-    
+
     @java.lang.Override
     public boolean equals(final java.lang.Object obj) {
       if (obj == this) {
@@ -344,7 +572,7 @@ public final class AccessControlProtos {
         return super.equals(obj);
       }
       org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission other = (org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission) obj;
-      
+
       boolean result = true;
       result = result && (hasType() == other.hasType());
       if (hasType()) {
@@ -370,9 +598,13 @@ public final class AccessControlProtos {
           getUnknownFields().equals(other.getUnknownFields());
       return result;
     }
-    
+
+    private int memoizedHashCode = 0;
     @java.lang.Override
     public int hashCode() {
+      if (memoizedHashCode != 0) {
+        return memoizedHashCode;
+      }
       int hash = 41;
       hash = (19 * hash) + getDescriptorForType().hashCode();
       if (hasType()) {
@@ -392,89 +624,79 @@ public final class AccessControlProtos {
         hash = (53 * hash) + getTablePermission().hashCode();
       }
       hash = (29 * hash) + getUnknownFields().hashCode();
+      memoizedHashCode = hash;
       return hash;
     }
-    
+
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data).buildParsed();
+      return PARSER.parseFrom(data);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         com.google.protobuf.ByteString data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(data, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(byte[] data)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data).buildParsed();
+      return PARSER.parseFrom(data);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         byte[] data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(data, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input).buildParsed();
+      return PARSER.parseFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      Builder builder = newBuilder();
-      if (builder.mergeDelimitedFrom(input)) {
-        return builder.buildParsed();
-      } else {
-        return null;
-      }
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      Builder builder = newBuilder();
-      if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
-        return builder.buildParsed();
-      } else {
-        return null;
-      }
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input).buildParsed();
+      return PARSER.parseFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(input, extensionRegistry);
     }
-    
+
     public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
     public static Builder newBuilder(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission prototype) {
       return newBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() { return newBuilder(this); }
-    
+
     @java.lang.Override
     protected Builder newBuilderForType(
         com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
+    /**
+     * Protobuf type {@code Permission}
+     */
     public static final class Builder extends
         com.google.protobuf.GeneratedMessage.Builder<Builder>
        implements org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.PermissionOrBuilder {
@@ -482,18 +704,21 @@ public final class AccessControlProtos {
           getDescriptor() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_descriptor;
       }
-      
+
       protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_fieldAccessorTable;
+        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_fieldAccessorTable
+            .ensureFieldAccessorsInitialized(
+                org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.class, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Builder.class);
       }
-      
+
       // Construct using org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
-      
-      private Builder(BuilderParent parent) {
+
+      private Builder(
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
@@ -507,7 +732,7 @@ public final class AccessControlProtos {
       private static Builder create() {
         return new Builder();
       }
-      
+
       public Builder clear() {
         super.clear();
         type_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.Global;
@@ -532,20 +757,20 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000008);
         return this;
       }
-      
+
       public Builder clone() {
         return create().mergeFrom(buildPartial());
       }
-      
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.getDescriptor();
+        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_Permission_descriptor;
       }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission getDefaultInstanceForType() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.getDefaultInstance();
       }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission build() {
         org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission result = buildPartial();
         if (!result.isInitialized()) {
@@ -553,17 +778,7 @@ public final class AccessControlProtos {
         }
         return result;
       }
-      
-      private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission buildParsed()
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission result = buildPartial();
-        if (!result.isInitialized()) {
-          throw newUninitializedMessageException(
-            result).asInvalidProtocolBufferException();
-        }
-        return result;
-      }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission buildPartial() {
         org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission result = new org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission(this);
         int from_bitField0_ = bitField0_;
@@ -600,7 +815,7 @@ public final class AccessControlProtos {
         onBuilt();
         return result;
       }
-      
+
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission) {
           return mergeFrom((org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission)other);
@@ -609,7 +824,7 @@ public final class AccessControlProtos {
           return this;
         }
       }
-      
+
       public Builder mergeFrom(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission other) {
         if (other == org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.getDefaultInstance()) return this;
         if (other.hasType()) {
@@ -627,7 +842,7 @@ public final class AccessControlProtos {
         this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
-      
+
       public final boolean isInitialized() {
         if (!hasType()) {
           
@@ -641,82 +856,43 @@ public final class AccessControlProtos {
         }
         return true;
       }
-      
+
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
-        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
-          com.google.protobuf.UnknownFieldSet.newBuilder(
-            this.getUnknownFields());
-        while (true) {
-          int tag = input.readTag();
-          switch (tag) {
-            case 0:
-              this.setUnknownFields(unknownFields.build());
-              onChanged();
-              return this;
-            default: {
-              if (!parseUnknownField(input, unknownFields,
-                                     extensionRegistry, tag)) {
-                this.setUnknownFields(unknownFields.build());
-                onChanged();
-                return this;
-              }
-              break;
-            }
-            case 8: {
-              int rawValue = input.readEnum();
-              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.valueOf(rawValue);
-              if (value == null) {
-                unknownFields.mergeVarintField(1, rawValue);
-              } else {
-                bitField0_ |= 0x00000001;
-                type_ = value;
-              }
-              break;
-            }
-            case 18: {
-              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder subBuilder = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.newBuilder();
-              if (hasGlobalPermission()) {
-                subBuilder.mergeFrom(getGlobalPermission());
-              }
-              input.readMessage(subBuilder, extensionRegistry);
-              setGlobalPermission(subBuilder.buildPartial());
-              break;
-            }
-            case 26: {
-              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder subBuilder = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.newBuilder();
-              if (hasNamespacePermission()) {
-                subBuilder.mergeFrom(getNamespacePermission());
-              }
-              input.readMessage(subBuilder, extensionRegistry);
-              setNamespacePermission(subBuilder.buildPartial());
-              break;
-            }
-            case 34: {
-              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder subBuilder = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.newBuilder();
-              if (hasTablePermission()) {
-                subBuilder.mergeFrom(getTablePermission());
-              }
-              input.readMessage(subBuilder, extensionRegistry);
-              setTablePermission(subBuilder.buildPartial());
-              break;
-            }
+        org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission parsedMessage = null;
+        try {
+          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
+        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+          parsedMessage = (org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission) e.getUnfinishedMessage();
+          throw e;
+        } finally {
+          if (parsedMessage != null) {
+            mergeFrom(parsedMessage);
           }
         }
+        return this;
       }
-      
       private int bitField0_;
-      
+
       // required .Permission.Type type = 1;
       private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type type_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.Global;
+      /**
+       * <code>required .Permission.Type type = 1;</code>
+       */
       public boolean hasType() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
+      /**
+       * <code>required .Permission.Type type = 1;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type getType() {
         return type_;
       }
+      /**
+       * <code>required .Permission.Type type = 1;</code>
+       */
       public Builder setType(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type value) {
         if (value == null) {
           throw new NullPointerException();
@@ -726,20 +902,29 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>required .Permission.Type type = 1;</code>
+       */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000001);
         type_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Type.Global;
         onChanged();
         return this;
       }
-      
+
       // optional .GlobalPermission global_permission = 2;
       private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission globalPermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermissionOrBuilder> globalPermissionBuilder_;
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public boolean hasGlobalPermission() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission getGlobalPermission() {
         if (globalPermissionBuilder_ == null) {
           return globalPermission_;
@@ -747,6 +932,9 @@ public final class AccessControlProtos {
           return globalPermissionBuilder_.getMessage();
         }
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public Builder setGlobalPermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission value) {
         if (globalPermissionBuilder_ == null) {
           if (value == null) {
@@ -760,6 +948,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000002;
         return this;
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public Builder setGlobalPermission(
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder builderForValue) {
         if (globalPermissionBuilder_ == null) {
@@ -771,6 +962,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000002;
         return this;
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public Builder mergeGlobalPermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission value) {
         if (globalPermissionBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
@@ -787,6 +981,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000002;
         return this;
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public Builder clearGlobalPermission() {
         if (globalPermissionBuilder_ == null) {
           globalPermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.getDefaultInstance();
@@ -797,11 +994,17 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000002);
         return this;
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder getGlobalPermissionBuilder() {
         bitField0_ |= 0x00000002;
         onChanged();
         return getGlobalPermissionFieldBuilder().getBuilder();
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermissionOrBuilder getGlobalPermissionOrBuilder() {
         if (globalPermissionBuilder_ != null) {
           return globalPermissionBuilder_.getMessageOrBuilder();
@@ -809,6 +1012,9 @@ public final class AccessControlProtos {
           return globalPermission_;
         }
       }
+      /**
+       * <code>optional .GlobalPermission global_permission = 2;</code>
+       */
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.GlobalPermissionOrBuilder> 
           getGlobalPermissionFieldBuilder() {
@@ -822,14 +1028,20 @@ public final class AccessControlProtos {
         }
         return globalPermissionBuilder_;
       }
-      
+
       // optional .NamespacePermission namespace_permission = 3;
       private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission namespacePermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermissionOrBuilder> namespacePermissionBuilder_;
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public boolean hasNamespacePermission() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission getNamespacePermission() {
         if (namespacePermissionBuilder_ == null) {
           return namespacePermission_;
@@ -837,6 +1049,9 @@ public final class AccessControlProtos {
           return namespacePermissionBuilder_.getMessage();
         }
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public Builder setNamespacePermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission value) {
         if (namespacePermissionBuilder_ == null) {
           if (value == null) {
@@ -850,6 +1065,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000004;
         return this;
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public Builder setNamespacePermission(
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder builderForValue) {
         if (namespacePermissionBuilder_ == null) {
@@ -861,6 +1079,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000004;
         return this;
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public Builder mergeNamespacePermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission value) {
         if (namespacePermissionBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
@@ -877,6 +1098,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000004;
         return this;
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public Builder clearNamespacePermission() {
         if (namespacePermissionBuilder_ == null) {
           namespacePermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.getDefaultInstance();
@@ -887,11 +1111,17 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder getNamespacePermissionBuilder() {
         bitField0_ |= 0x00000004;
         onChanged();
         return getNamespacePermissionFieldBuilder().getBuilder();
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermissionOrBuilder getNamespacePermissionOrBuilder() {
         if (namespacePermissionBuilder_ != null) {
           return namespacePermissionBuilder_.getMessageOrBuilder();
@@ -899,6 +1129,9 @@ public final class AccessControlProtos {
           return namespacePermission_;
         }
       }
+      /**
+       * <code>optional .NamespacePermission namespace_permission = 3;</code>
+       */
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.NamespacePermissionOrBuilder> 
           getNamespacePermissionFieldBuilder() {
@@ -912,14 +1145,20 @@ public final class AccessControlProtos {
         }
         return namespacePermissionBuilder_;
       }
-      
+
       // optional .TablePermission table_permission = 4;
       private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission tablePermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder> tablePermissionBuilder_;
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public boolean hasTablePermission() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission getTablePermission() {
         if (tablePermissionBuilder_ == null) {
           return tablePermission_;
@@ -927,6 +1166,9 @@ public final class AccessControlProtos {
           return tablePermissionBuilder_.getMessage();
         }
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public Builder setTablePermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission value) {
         if (tablePermissionBuilder_ == null) {
           if (value == null) {
@@ -940,6 +1182,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000008;
         return this;
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public Builder setTablePermission(
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder builderForValue) {
         if (tablePermissionBuilder_ == null) {
@@ -951,6 +1196,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000008;
         return this;
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public Builder mergeTablePermission(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission value) {
         if (tablePermissionBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
@@ -967,6 +1215,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000008;
         return this;
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public Builder clearTablePermission() {
         if (tablePermissionBuilder_ == null) {
           tablePermission_ = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.getDefaultInstance();
@@ -977,11 +1228,17 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000008);
         return this;
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder getTablePermissionBuilder() {
         bitField0_ |= 0x00000008;
         onChanged();
         return getTablePermissionFieldBuilder().getBuilder();
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder getTablePermissionOrBuilder() {
         if (tablePermissionBuilder_ != null) {
           return tablePermissionBuilder_.getMessageOrBuilder();
@@ -989,6 +1246,9 @@ public final class AccessControlProtos {
           return tablePermission_;
         }
       }
+      /**
+       * <code>optional .TablePermission table_permission = 4;</code>
+       */
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder> 
           getTablePermissionFieldBuilder() {
@@ -1002,114 +1262,295 @@ public final class AccessControlProtos {
         }
         return tablePermissionBuilder_;
       }
-      
+
       // @@protoc_insertion_point(builder_scope:Permission)
     }
-    
+
     static {
       defaultInstance = new Permission(true);
       defaultInstance.initFields();
     }
-    
+
     // @@protoc_insertion_point(class_scope:Permission)
   }
-  
+
   public interface TablePermissionOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
-    
+
     // optional .TableName table_name = 1;
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     boolean hasTableName();
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName getTableName();
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableNameOrBuilder getTableNameOrBuilder();
-    
+
     // optional bytes family = 2;
+    /**
+     * <code>optional bytes family = 2;</code>
+     */
     boolean hasFamily();
+    /**
+     * <code>optional bytes family = 2;</code>
+     */
     com.google.protobuf.ByteString getFamily();
-    
+
     // optional bytes qualifier = 3;
+    /**
+     * <code>optional bytes qualifier = 3;</code>
+     */
     boolean hasQualifier();
+    /**
+     * <code>optional bytes qualifier = 3;</code>
+     */
     com.google.protobuf.ByteString getQualifier();
-    
+
     // repeated .Permission.Action action = 4;
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> getActionList();
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     int getActionCount();
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action getAction(int index);
   }
+  /**
+   * Protobuf type {@code TablePermission}
+   */
   public static final class TablePermission extends
       com.google.protobuf.GeneratedMessage
       implements TablePermissionOrBuilder {
     // Use TablePermission.newBuilder() to construct.
-    private TablePermission(Builder builder) {
+    private TablePermission(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private TablePermission(boolean noInit) {}
-    
+    private TablePermission(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
     private static final TablePermission defaultInstance;
     public static TablePermission getDefaultInstance() {
       return defaultInstance;
     }
-    
+
     public TablePermission getDefaultInstanceForType() {
       return defaultInstance;
     }
-    
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
+    @java.lang.Override
+    public final com.google.protobuf.UnknownFieldSet
+        getUnknownFields() {
+      return this.unknownFields;
+    }
+    private TablePermission(
+        com.google.protobuf.CodedInputStream input,
+        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+        throws com.google.protobuf.InvalidProtocolBufferException {
+      initFields();
+      int mutable_bitField0_ = 0;
+      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
+          com.google.protobuf.UnknownFieldSet.newBuilder();
+      try {
+        boolean done = false;
+        while (!done) {
+          int tag = input.readTag();
+          switch (tag) {
+            case 0:
+              done = true;
+              break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
+            case 10: {
+              org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder subBuilder = null;
+              if (((bitField0_ & 0x00000001) == 0x00000001)) {
+                subBuilder = tableName_.toBuilder();
+              }
+              tableName_ = input.readMessage(org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.PARSER, extensionRegistry);
+              if (subBuilder != null) {
+                subBuilder.mergeFrom(tableName_);
+                tableName_ = subBuilder.buildPartial();
+              }
+              bitField0_ |= 0x00000001;
+              break;
+            }
+            case 18: {
+              bitField0_ |= 0x00000002;
+              family_ = input.readBytes();
+              break;
+            }
+            case 26: {
+              bitField0_ |= 0x00000004;
+              qualifier_ = input.readBytes();
+              break;
+            }
+            case 32: {
+              int rawValue = input.readEnum();
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action.valueOf(rawValue);
+              if (value == null) {
+                unknownFields.mergeVarintField(4, rawValue);
+              } else {
+                if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
+                  action_ = new java.util.ArrayList<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action>();
+                  mutable_bitField0_ |= 0x00000008;
+                }
+                action_.add(value);
+              }
+              break;
+            }
+            case 34: {
+              int length = input.readRawVarint32();
+              int oldLimit = input.pushLimit(length);
+              while(input.getBytesUntilLimit() > 0) {
+                int rawValue = input.readEnum();
+                org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action.valueOf(rawValue);
+                if (value == null) {
+                  unknownFields.mergeVarintField(4, rawValue);
+                } else {
+                  if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
+                    action_ = new java.util.ArrayList<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action>();
+                    mutable_bitField0_ |= 0x00000008;
+                  }
+                  action_.add(value);
+                }
+              }
+              input.popLimit(oldLimit);
+              break;
+            }
+          }
+        }
+      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+        throw e.setUnfinishedMessage(this);
+      } catch (java.io.IOException e) {
+        throw new com.google.protobuf.InvalidProtocolBufferException(
+            e.getMessage()).setUnfinishedMessage(this);
+      } finally {
+        if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
+          action_ = java.util.Collections.unmodifiableList(action_);
+        }
+        this.unknownFields = unknownFields.build();
+        makeExtensionsImmutable();
+      }
+    }
     public static final com.google.protobuf.Descriptors.Descriptor
         getDescriptor() {
       return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_descriptor;
     }
-    
+
     protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
-      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_fieldAccessorTable;
+      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_fieldAccessorTable
+          .ensureFieldAccessorsInitialized(
+              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.class, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder.class);
+    }
+
+    public static com.google.protobuf.Parser<TablePermission> PARSER =
+        new com.google.protobuf.AbstractParser<TablePermission>() {
+      public TablePermission parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new TablePermission(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<TablePermission> getParserForType() {
+      return PARSER;
     }
-    
+
     private int bitField0_;
     // optional .TableName table_name = 1;
     public static final int TABLE_NAME_FIELD_NUMBER = 1;
     private org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName tableName_;
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     public boolean hasTableName() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName getTableName() {
       return tableName_;
     }
+    /**
+     * <code>optional .TableName table_name = 1;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableNameOrBuilder getTableNameOrBuilder() {
       return tableName_;
     }
-    
+
     // optional bytes family = 2;
     public static final int FAMILY_FIELD_NUMBER = 2;
     private com.google.protobuf.ByteString family_;
+    /**
+     * <code>optional bytes family = 2;</code>
+     */
     public boolean hasFamily() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
+    /**
+     * <code>optional bytes family = 2;</code>
+     */
     public com.google.protobuf.ByteString getFamily() {
       return family_;
     }
-    
+
     // optional bytes qualifier = 3;
     public static final int QUALIFIER_FIELD_NUMBER = 3;
     private com.google.protobuf.ByteString qualifier_;
+    /**
+     * <code>optional bytes qualifier = 3;</code>
+     */
     public boolean hasQualifier() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
+    /**
+     * <code>optional bytes qualifier = 3;</code>
+     */
     public com.google.protobuf.ByteString getQualifier() {
       return qualifier_;
     }
-    
+
     // repeated .Permission.Action action = 4;
     public static final int ACTION_FIELD_NUMBER = 4;
     private java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> action_;
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     public java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> getActionList() {
       return action_;
     }
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     public int getActionCount() {
       return action_.size();
     }
+    /**
+     * <code>repeated .Permission.Action action = 4;</code>
+     */
     public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action getAction(int index) {
       return action_.get(index);
     }
-    
+
     private void initFields() {
       tableName_ = org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.getDefaultInstance();
       family_ = com.google.protobuf.ByteString.EMPTY;
@@ -1120,7 +1561,7 @@ public final class AccessControlProtos {
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
       if (isInitialized != -1) return isInitialized == 1;
-      
+
       if (hasTableName()) {
         if (!getTableName().isInitialized()) {
           memoizedIsInitialized = 0;
@@ -1130,7 +1571,7 @@ public final class AccessControlProtos {
       memoizedIsInitialized = 1;
       return true;
     }
-    
+
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
       getSerializedSize();
@@ -1148,12 +1589,12 @@ public final class AccessControlProtos {
       }
       getUnknownFields().writeTo(output);
     }
-    
+
     private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
       int size = memoizedSerializedSize;
       if (size != -1) return size;
-    
+
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
@@ -1180,14 +1621,14 @@ public final class AccessControlProtos {
       memoizedSerializedSize = size;
       return size;
     }
-    
+
     private static final long serialVersionUID = 0L;
     @java.lang.Override
     protected java.lang.Object writeReplace()
         throws java.io.ObjectStreamException {
       return super.writeReplace();
     }
-    
+
     @java.lang.Override
     public boolean equals(final java.lang.Object obj) {
       if (obj == this) {
@@ -1197,7 +1638,7 @@ public final class AccessControlProtos {
         return super.equals(obj);
       }
       org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission other = (org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission) obj;
-      
+
       boolean result = true;
       result = result && (hasTableName() == other.hasTableName());
       if (hasTableName()) {
@@ -1220,9 +1661,13 @@ public final class AccessControlProtos {
           getUnknownFields().equals(other.getUnknownFields());
       return result;
     }
-    
+
+    private int memoizedHashCode = 0;
     @java.lang.Override
     public int hashCode() {
+      if (memoizedHashCode != 0) {
+        return memoizedHashCode;
+      }
       int hash = 41;
       hash = (19 * hash) + getDescriptorForType().hashCode();
       if (hasTableName()) {
@@ -1242,89 +1687,79 @@ public final class AccessControlProtos {
         hash = (53 * hash) + hashEnumList(getActionList());
       }
       hash = (29 * hash) + getUnknownFields().hashCode();
+      memoizedHashCode = hash;
       return hash;
     }
-    
+
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data).buildParsed();
+      return PARSER.parseFrom(data);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         com.google.protobuf.ByteString data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(data, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(byte[] data)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data).buildParsed();
+      return PARSER.parseFrom(data);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         byte[] data,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      return newBuilder().mergeFrom(data, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(data, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input).buildParsed();
+      return PARSER.parseFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      Builder builder = newBuilder();
-      if (builder.mergeDelimitedFrom(input)) {
-        return builder.buildParsed();
-      } else {
-        return null;
-      }
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      Builder builder = newBuilder();
-      if (builder.mergeDelimitedFrom(input, extensionRegistry)) {
-        return builder.buildParsed();
-      } else {
-        return null;
-      }
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input).buildParsed();
+      return PARSER.parseFrom(input);
     }
     public static org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return newBuilder().mergeFrom(input, extensionRegistry)
-               .buildParsed();
+      return PARSER.parseFrom(input, extensionRegistry);
     }
-    
+
     public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
     public static Builder newBuilder(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission prototype) {
       return newBuilder().mergeFrom(prototype);
     }
     public Builder toBuilder() { return newBuilder(this); }
-    
+
     @java.lang.Override
     protected Builder newBuilderForType(
         com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
+    /**
+     * Protobuf type {@code TablePermission}
+     */
     public static final class Builder extends
         com.google.protobuf.GeneratedMessage.Builder<Builder>
        implements org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermissionOrBuilder {
@@ -1332,18 +1767,21 @@ public final class AccessControlProtos {
           getDescriptor() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_descriptor;
       }
-      
+
       protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
-        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_fieldAccessorTable;
+        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_fieldAccessorTable
+            .ensureFieldAccessorsInitialized(
+                org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.class, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.Builder.class);
       }
-      
+
       // Construct using org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.newBuilder()
       private Builder() {
         maybeForceBuilderInitialization();
       }
-      
-      private Builder(BuilderParent parent) {
+
+      private Builder(
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
@@ -1355,7 +1793,7 @@ public final class AccessControlProtos {
       private static Builder create() {
         return new Builder();
       }
-      
+
       public Builder clear() {
         super.clear();
         if (tableNameBuilder_ == null) {
@@ -1372,20 +1810,20 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000008);
         return this;
       }
-      
+
       public Builder clone() {
         return create().mergeFrom(buildPartial());
       }
-      
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
-        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.getDescriptor();
+        return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_TablePermission_descriptor;
       }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission getDefaultInstanceForType() {
         return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.getDefaultInstance();
       }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission build() {
         org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission result = buildPartial();
         if (!result.isInitialized()) {
@@ -1393,17 +1831,7 @@ public final class AccessControlProtos {
         }
         return result;
       }
-      
-      private org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission buildParsed()
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission result = buildPartial();
-        if (!result.isInitialized()) {
-          throw newUninitializedMessageException(
-            result).asInvalidProtocolBufferException();
-        }
-        return result;
-      }
-      
+
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission buildPartial() {
         org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission result = new org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission(this);
         int from_bitField0_ = bitField0_;
@@ -1433,7 +1861,7 @@ public final class AccessControlProtos {
         onBuilt();
         return result;
       }
-      
+
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission) {
           return mergeFrom((org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission)other);
@@ -1442,7 +1870,7 @@ public final class AccessControlProtos {
           return this;
         }
       }
-      
+
       public Builder mergeFrom(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission other) {
         if (other == org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission.getDefaultInstance()) return this;
         if (other.hasTableName()) {
@@ -1467,7 +1895,7 @@ public final class AccessControlProtos {
         this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
-      
+
       public final boolean isInitialized() {
         if (hasTableName()) {
           if (!getTableName().isInitialized()) {
@@ -1477,87 +1905,39 @@ public final class AccessControlProtos {
         }
         return true;
       }
-      
+
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
           throws java.io.IOException {
-        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
-          com.google.protobuf.UnknownFieldSet.newBuilder(
-            this.getUnknownFields());
-        while (true) {
-          int tag = input.readTag();
-          switch (tag) {
-            case 0:
-              this.setUnknownFields(unknownFields.build());
-              onChanged();
-              return this;
-            default: {
-              if (!parseUnknownField(input, unknownFields,
-                                     extensionRegistry, tag)) {
-                this.setUnknownFields(unknownFields.build());
-                onChanged();
-                return this;
-              }
-              break;
-            }
-            case 10: {
-              org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder subBuilder = org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.newBuilder();
-              if (hasTableName()) {
-                subBuilder.mergeFrom(getTableName());
-              }
-              input.readMessage(subBuilder, extensionRegistry);
-              setTableName(subBuilder.buildPartial());
-              break;
-            }
-            case 18: {
-              bitField0_ |= 0x00000002;
-              family_ = input.readBytes();
-              break;
-            }
-            case 26: {
-              bitField0_ |= 0x00000004;
-              qualifier_ = input.readBytes();
-              break;
-            }
-            case 32: {
-              int rawValue = input.readEnum();
-              org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action.valueOf(rawValue);
-              if (value == null) {
-                unknownFields.mergeVarintField(4, rawValue);
-              } else {
-                addAction(value);
-              }
-              break;
-            }
-            case 34: {
-              int length = input.readRawVarint32();
-              int oldLimit = input.pushLimit(length);
-              while(input.getBytesUntilLimit() > 0) {
-                int rawValue = input.readEnum();
-                org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value = org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action.valueOf(rawValue);
-                if (value == null) {
-                  unknownFields.mergeVarintField(4, rawValue);
-                } else {
-                  addAction(value);
-                }
-              }
-              input.popLimit(oldLimit);
-              break;
-            }
+        org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission parsedMessage = null;
+        try {
+          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
+        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+          parsedMessage = (org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.TablePermission) e.getUnfinishedMessage();
+          throw e;
+        } finally {
+          if (parsedMessage != null) {
+            mergeFrom(parsedMessage);
           }
         }
+        return this;
       }
-      
       private int bitField0_;
-      
+
       // optional .TableName table_name = 1;
       private org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName tableName_ = org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.getDefaultInstance();
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName, org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder, org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableNameOrBuilder> tableNameBuilder_;
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public boolean hasTableName() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName getTableName() {
         if (tableNameBuilder_ == null) {
           return tableName_;
@@ -1565,6 +1945,9 @@ public final class AccessControlProtos {
           return tableNameBuilder_.getMessage();
         }
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public Builder setTableName(org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName value) {
         if (tableNameBuilder_ == null) {
           if (value == null) {
@@ -1578,6 +1961,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000001;
         return this;
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public Builder setTableName(
           org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder builderForValue) {
         if (tableNameBuilder_ == null) {
@@ -1589,6 +1975,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000001;
         return this;
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public Builder mergeTableName(org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName value) {
         if (tableNameBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
@@ -1605,6 +1994,9 @@ public final class AccessControlProtos {
         bitField0_ |= 0x00000001;
         return this;
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public Builder clearTableName() {
         if (tableNameBuilder_ == null) {
           tableName_ = org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.getDefaultInstance();
@@ -1615,11 +2007,17 @@ public final class AccessControlProtos {
         bitField0_ = (bitField0_ & ~0x00000001);
         return this;
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder getTableNameBuilder() {
         bitField0_ |= 0x00000001;
         onChanged();
         return getTableNameFieldBuilder().getBuilder();
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableNameOrBuilder getTableNameOrBuilder() {
         if (tableNameBuilder_ != null) {
           return tableNameBuilder_.getMessageOrBuilder();
@@ -1627,6 +2025,9 @@ public final class AccessControlProtos {
           return tableName_;
         }
       }
+      /**
+       * <code>optional .TableName table_name = 1;</code>
+       */
       private com.google.protobuf.SingleFieldBuilder<
           org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName, org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableName.Builder, org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableNameOrBuilder> 
           getTableNameFieldBuilder() {
@@ -1640,15 +2041,24 @@ public final class AccessControlProtos {
         }
         return tableNameBuilder_;
       }
-      
+
       // optional bytes family = 2;
       private com.google.protobuf.ByteString family_ = com.google.protobuf.ByteString.EMPTY;
+      /**
+       * <code>optional bytes family = 2;</code>
+       */
       public boolean hasFamily() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
+      /**
+       * <code>optional bytes family = 2;</code>
+       */
       public com.google.protobuf.ByteString getFamily() {
         return family_;
       }
+      /**
+       * <code>optional bytes family = 2;</code>
+       */
       public Builder setFamily(com.google.protobuf.ByteString value) {
         if (value == null) {
     throw new NullPointerException();
@@ -1658,21 +2068,33 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>optional bytes family = 2;</code>
+       */
       public Builder clearFamily() {
         bitField0_ = (bitField0_ & ~0x00000002);
         family_ = getDefaultInstance().getFamily();
         onChanged();
         return this;
       }
-      
+
       // optional bytes qualifier = 3;
       private com.google.protobuf.ByteString qualifier_ = com.google.protobuf.ByteString.EMPTY;
+      /**
+       * <code>optional bytes qualifier = 3;</code>
+       */
       public boolean hasQualifier() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
+      /**
+       * <code>optional bytes qualifier = 3;</code>
+       */
       public com.google.protobuf.ByteString getQualifier() {
         return qualifier_;
       }
+      /**
+       * <code>optional bytes qualifier = 3;</code>
+       */
       public Builder setQualifier(com.google.protobuf.ByteString value) {
         if (value == null) {
     throw new NullPointerException();
@@ -1682,13 +2104,16 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>optional bytes qualifier = 3;</code>
+       */
       public Builder clearQualifier() {
         bitField0_ = (bitField0_ & ~0x00000004);
         qualifier_ = getDefaultInstance().getQualifier();
         onChanged();
         return this;
       }
-      
+
       // repeated .Permission.Action action = 4;
       private java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> action_ =
         java.util.Collections.emptyList();
@@ -1698,15 +2123,27 @@ public final class AccessControlProtos {
           bitField0_ |= 0x00000008;
         }
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> getActionList() {
         return java.util.Collections.unmodifiableList(action_);
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public int getActionCount() {
         return action_.size();
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action getAction(int index) {
         return action_.get(index);
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public Builder setAction(
           int index, org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value) {
         if (value == null) {
@@ -1717,6 +2154,9 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public Builder addAction(org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action value) {
         if (value == null) {
           throw new NullPointerException();
@@ -1726,6 +2166,9 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public Builder addAllAction(
           java.lang.Iterable<? extends org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> values) {
         ensureActionIsMutable();
@@ -1733,88 +2176,224 @@ public final class AccessControlProtos {
         onChanged();
         return this;
       }
+      /**
+       * <code>repeated .Permission.Action action = 4;</code>
+       */
       public Builder clearAction() {
         action_ = java.util.Collections.emptyList();
         bitField0_ = (bitField0_ & ~0x00000008);
         onChanged();
         return this;
       }
-      
+
       // @@protoc_insertion_point(builder_scope:TablePermission)
     }
-    
+
     static {
       defaultInstance = new TablePermission(true);
       defaultInstance.initFields();
     }
-    
+
     // @@protoc_insertion_point(class_scope:TablePermission)
   }
-  
+
   public interface NamespacePermissionOrBuilder
       extends com.google.protobuf.MessageOrBuilder {
-    
+
     // optional bytes namespace_name = 1;
+    /**
+     * <code>optional bytes namespace_name = 1;</code>
+     */
     boolean hasNamespaceName();
+    /**
+     * <code>optional bytes namespace_name = 1;</code>
+     */
     com.google.protobuf.ByteString getNamespaceName();
-    
+
     // repeated .Permission.Action action = 2;
+    /**
+     * <code>repeated .Permission.Action action = 2;</code>
+     */
     java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> getActionList();
+    /**
+     * <code>repeated .Permission.Action action = 2;</code>
+     */
     int getActionCount();
+    /**
+     * <code>repeated .Permission.Action action = 2;</code>
+     */
     org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action getAction(int index);
   }
+  /**
+   * Protobuf type {@code NamespacePermission}
+   */
   public static final class NamespacePermission extends
       com.google.protobuf.GeneratedMessage
       implements NamespacePermissionOrBuilder {
     // Use NamespacePermission.newBuilder() to construct.
-    private NamespacePermission(Builder builder) {
+    private NamespacePermission(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private NamespacePermission(boolean noInit) {}
-    
+    private NamespacePermission(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
     private static final NamespacePermission defaultInstance;
     public static NamespacePermission getDefaultInstance() {
       return defaultInstance;
     }
-    
+
     public NamespacePermission getDefaultInstanceForType() {
       return defaultInstance;
     }
-    
-    public static final com.google.protobuf.Descriptors.Descriptor
-        getDescriptor() {
-      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_NamespacePermission_descriptor;
-    }
-    
-    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
-        internalGetFieldAccessorTable() {
-      return org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.internal_static_NamespacePermission_fieldAccessorTable;
-    }
-    
-    private int bitField0_;
-    // optional bytes namespace_name = 1;
-    public static final int NAMESPACE_NAME_FIELD_NUMBER = 1;
-    private com.google.protobuf.ByteString namespaceName_;
-    public boolean hasNamespaceName() {
-      return ((bitField0_ & 0x00000001) == 0x00000001);
-    }
-    public com.google.protobuf.ByteString getNamespaceName() {
-      return namespaceName_;
-    }
-    
-    // repeated .Permission.Action action = 2;
-    public static final int ACTION_FIELD_NUMBER = 2;
-    private java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> action_;
-    public java.util.List<org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action> getActionList() {
-      return action_;
-    }
-    public int getActionCount() {
-      return action_.size();
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
+    @java.lang.Override
+    public final com.google.protobuf.UnknownFieldSet
+        getUnknownFields() {
+      return this.unknownFields;
     }
-    public org.apache.hadoop.hbase.protobuf.generated.AccessControlProtos.Permission.Action getAction(int index) {
-      return action_.get(index);
+    private NamespacePermission(
+        com.google.protobuf.CodedInputStream input,
+        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+        throws com.google.protobuf.InvalidProtocolBufferException {
+      initFields();
+      int mutable_bitField0_ = 0;
+      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
+          com.google.protobuf.UnknownFieldSet.newBuilder();
+      try {
+        boolean done = false;
+        while (!done) {
+          int tag = input.readTag();
+          switch (tag) {
+            case 0:
+              done = true;
+              break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
+            case 10: {
+              bitField0_ |= 0x00000001;
+              namespaceName_ = input.readBytes();

[... 8614 lines stripped ...]