/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by http://code.google.com/p/protostuff/ ... DO NOT EDIT!
// Generated from protobuf

package org.apache.drill.exec.proto;


public final class SchemaUserProtos
{

    public static final class Property
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.Property.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.Property.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.Property.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.Property.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.Property>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.Property message) throws java.io.IOException
            {
                if(message.hasKey())
                    output.writeString(1, message.getKey(), false);
                if(message.hasValue())
                    output.writeString(2, message.getValue(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.Property message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.Property.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.Property.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.Property> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.Property message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.Property newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.Property.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.Property.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setKey(input.readString());
                            break;
                        case 2:
                            builder.setValue(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.Property.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.Property.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.Property.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.Property.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.Property.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.Property.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.Property.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "key";
                case 2: return "value";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("key", 1);
            fieldMap.put("value", 2);
        }
    }

    public static final class UserProperties
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.UserProperties>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.UserProperties message) throws java.io.IOException
            {
                for(org.apache.drill.exec.proto.UserProtos.Property properties : message.getPropertiesList())
                    output.writeObject(1, properties, org.apache.drill.exec.proto.SchemaUserProtos.Property.WRITE, true);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.UserProperties message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.UserProperties> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.UserProperties message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.UserProperties newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.UserProperties.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.addProperties(input.mergeObject(org.apache.drill.exec.proto.UserProtos.Property.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.Property.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.UserProperties.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.UserProperties.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.UserProperties.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserProperties.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "properties";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("properties", 1);
        }
    }

    public static final class RpcEndpointInfos
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos message) throws java.io.IOException
            {
                if(message.hasName())
                    output.writeString(1, message.getName(), false);
                if(message.hasVersion())
                    output.writeString(2, message.getVersion(), false);
                if(message.hasMajorVersion())
                    output.writeUInt32(3, message.getMajorVersion(), false);
                if(message.hasMinorVersion())
                    output.writeUInt32(4, message.getMinorVersion(), false);
                if(message.hasPatchVersion())
                    output.writeUInt32(5, message.getPatchVersion(), false);
                if(message.hasApplication())
                    output.writeString(6, message.getApplication(), false);
                if(message.hasBuildNumber())
                    output.writeUInt32(7, message.getBuildNumber(), false);
                if(message.hasVersionQualifier())
                    output.writeString(8, message.getVersionQualifier(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setName(input.readString());
                            break;
                        case 2:
                            builder.setVersion(input.readString());
                            break;
                        case 3:
                            builder.setMajorVersion(input.readUInt32());
                            break;
                        case 4:
                            builder.setMinorVersion(input.readUInt32());
                            break;
                        case 5:
                            builder.setPatchVersion(input.readUInt32());
                            break;
                        case 6:
                            builder.setApplication(input.readString());
                            break;
                        case 7:
                            builder.setBuildNumber(input.readUInt32());
                            break;
                        case 8:
                            builder.setVersionQualifier(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "name";
                case 2: return "version";
                case 3: return "majorVersion";
                case 4: return "minorVersion";
                case 5: return "patchVersion";
                case 6: return "application";
                case 7: return "buildNumber";
                case 8: return "versionQualifier";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("name", 1);
            fieldMap.put("version", 2);
            fieldMap.put("majorVersion", 3);
            fieldMap.put("minorVersion", 4);
            fieldMap.put("patchVersion", 5);
            fieldMap.put("application", 6);
            fieldMap.put("buildNumber", 7);
            fieldMap.put("versionQualifier", 8);
        }
    }

    public static final class UserToBitHandshake
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.UserToBitHandshake>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.UserToBitHandshake message) throws java.io.IOException
            {
                if(message.hasChannel())
                    output.writeEnum(1, message.getChannel().getNumber(), false);
                if(message.hasSupportListening())
                    output.writeBool(2, message.getSupportListening(), false);
                if(message.hasRpcVersion())
                    output.writeInt32(3, message.getRpcVersion(), false);
                if(message.hasCredentials())
                    output.writeObject(4, message.getCredentials(), org.apache.drill.exec.proto.SchemaUserBitShared.UserCredentials.WRITE, false);

                if(message.hasProperties())
                    output.writeObject(5, message.getProperties(), org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.WRITE, false);

                if(message.hasSupportComplexTypes())
                    output.writeBool(6, message.getSupportComplexTypes(), false);
                if(message.hasSupportTimeout())
                    output.writeBool(7, message.getSupportTimeout(), false);
                if(message.hasClientInfos())
                    output.writeObject(8, message.getClientInfos(), org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.WRITE, false);

                if(message.hasSaslSupport())
                    output.writeEnum(9, message.getSaslSupport().getNumber(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.UserToBitHandshake message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.UserToBitHandshake> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.UserToBitHandshake message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setChannel(org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setSupportListening(input.readBool());
                            break;
                        case 3:
                            builder.setRpcVersion(input.readInt32());
                            break;
                        case 4:
                            builder.setCredentials(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.UserCredentials.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.UserCredentials.MERGE));

                            break;
                        case 5:
                            builder.setProperties(input.mergeObject(org.apache.drill.exec.proto.UserProtos.UserProperties.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.UserProperties.MERGE));

                            break;
                        case 6:
                            builder.setSupportComplexTypes(input.readBool());
                            break;
                        case 7:
                            builder.setSupportTimeout(input.readBool());
                            break;
                        case 8:
                            builder.setClientInfos(input.mergeObject(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.MERGE));

                            break;
                        case 9:
                            builder.setSaslSupport(org.apache.drill.exec.proto.UserProtos.SaslSupport.valueOf(input.readEnum()));
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.UserToBitHandshake.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "channel";
                case 2: return "supportListening";
                case 3: return "rpcVersion";
                case 4: return "credentials";
                case 5: return "properties";
                case 6: return "supportComplexTypes";
                case 7: return "supportTimeout";
                case 8: return "clientInfos";
                case 9: return "saslSupport";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("channel", 1);
            fieldMap.put("supportListening", 2);
            fieldMap.put("rpcVersion", 3);
            fieldMap.put("credentials", 4);
            fieldMap.put("properties", 5);
            fieldMap.put("supportComplexTypes", 6);
            fieldMap.put("supportTimeout", 7);
            fieldMap.put("clientInfos", 8);
            fieldMap.put("saslSupport", 9);
        }
    }

    public static final class RequestResults
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RequestResults>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RequestResults message) throws java.io.IOException
            {
                if(message.hasQueryId())
                    output.writeObject(1, message.getQueryId(), org.apache.drill.exec.proto.SchemaUserBitShared.QueryId.WRITE, false);

                if(message.hasMaximumResponses())
                    output.writeInt32(2, message.getMaximumResponses(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RequestResults message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RequestResults> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RequestResults message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.RequestResults newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RequestResults.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RequestResults.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setQueryId(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.QueryId.MERGE));

                            break;
                        case 2:
                            builder.setMaximumResponses(input.readInt32());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RequestResults.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.RequestResults.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RequestResults.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RequestResults.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RequestResults.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RequestResults.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "queryId";
                case 2: return "maximumResponses";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("queryId", 1);
            fieldMap.put("maximumResponses", 2);
        }
    }

    public static final class GetQueryPlanFragments
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments message) throws java.io.IOException
            {
                if(message.hasQuery())
                    output.writeString(1, message.getQuery(), false);
                if(message.hasType())
                    output.writeEnum(2, message.getType().getNumber(), false);
                if(message.hasSplitPlan())
                    output.writeBool(3, message.getSplitPlan(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setQuery(input.readString());
                            break;
                        case 2:
                            builder.setType(org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(input.readEnum()));
                            break;
                        case 3:
                            builder.setSplitPlan(input.readBool());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetQueryPlanFragments.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "query";
                case 2: return "type";
                case 3: return "splitPlan";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("query", 1);
            fieldMap.put("type", 2);
            fieldMap.put("splitPlan", 3);
        }
    }

    public static final class QueryPlanFragments
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.QueryPlanFragments>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.QueryPlanFragments message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                if(message.hasQueryId())
                    output.writeObject(2, message.getQueryId(), org.apache.drill.exec.proto.SchemaUserBitShared.QueryId.WRITE, false);

                for(org.apache.drill.exec.proto.BitControl.PlanFragment fragments : message.getFragmentsList())
                    output.writeObject(3, fragments, org.apache.drill.exec.proto.SchemaBitControl.PlanFragment.WRITE, true);

                if(message.hasError())
                    output.writeObject(4, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.QueryPlanFragments message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.QueryPlanFragments> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.QueryPlanFragments message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setQueryId(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.QueryId.MERGE));

                            break;
                        case 3:
                            builder.addFragments(input.mergeObject(org.apache.drill.exec.proto.BitControl.PlanFragment.newBuilder(), org.apache.drill.exec.proto.SchemaBitControl.PlanFragment.MERGE));

                            break;
                        case 4:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.QueryPlanFragments.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "queryId";
                case 3: return "fragments";
                case 4: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("queryId", 2);
            fieldMap.put("fragments", 3);
            fieldMap.put("error", 4);
        }
    }

    public static final class BitToUserHandshake
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.BitToUserHandshake>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.BitToUserHandshake message) throws java.io.IOException
            {
                if(message.hasRpcVersion())
                    output.writeInt32(2, message.getRpcVersion(), false);
                if(message.hasStatus())
                    output.writeEnum(3, message.getStatus().getNumber(), false);
                if(message.hasErrorId())
                    output.writeString(4, message.getErrorId(), false);
                if(message.hasErrorMessage())
                    output.writeString(5, message.getErrorMessage(), false);
                if(message.hasServerInfos())
                    output.writeObject(6, message.getServerInfos(), org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.WRITE, false);

                for(String authenticationMechanisms : message.getAuthenticationMechanismsList())
                    output.writeString(7, authenticationMechanisms, true);
                for(org.apache.drill.exec.proto.UserProtos.RpcType supportedMethods : message.getSupportedMethodsList())
                    output.writeEnum(8, supportedMethods.getNumber(), true);
                if(message.hasEncrypted())
                    output.writeBool(9, message.getEncrypted(), false);
                if(message.hasMaxWrappedSize())
                    output.writeInt32(10, message.getMaxWrappedSize(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.BitToUserHandshake message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.BitToUserHandshake> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.BitToUserHandshake message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 2:
                            builder.setRpcVersion(input.readInt32());
                            break;
                        case 3:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.HandshakeStatus.valueOf(input.readEnum()));
                            break;
                        case 4:
                            builder.setErrorId(input.readString());
                            break;
                        case 5:
                            builder.setErrorMessage(input.readString());
                            break;
                        case 6:
                            builder.setServerInfos(input.mergeObject(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.RpcEndpointInfos.MERGE));

                            break;
                        case 7:
                            builder.addAuthenticationMechanisms(input.readString());
                            break;
                        case 8:
                            builder.addSupportedMethods(org.apache.drill.exec.proto.UserProtos.RpcType.valueOf(input.readEnum()));
                            break;
                        case 9:
                            builder.setEncrypted(input.readBool());
                            break;
                        case 10:
                            builder.setMaxWrappedSize(input.readInt32());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.BitToUserHandshake.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 2: return "rpcVersion";
                case 3: return "status";
                case 4: return "errorId";
                case 5: return "errorMessage";
                case 6: return "serverInfos";
                case 7: return "authenticationMechanisms";
                case 8: return "supportedMethods";
                case 9: return "encrypted";
                case 10: return "maxWrappedSize";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("rpcVersion", 2);
            fieldMap.put("status", 3);
            fieldMap.put("errorId", 4);
            fieldMap.put("errorMessage", 5);
            fieldMap.put("serverInfos", 6);
            fieldMap.put("authenticationMechanisms", 7);
            fieldMap.put("supportedMethods", 8);
            fieldMap.put("encrypted", 9);
            fieldMap.put("maxWrappedSize", 10);
        }
    }

    public static final class LikeFilter
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.LikeFilter>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.LikeFilter message) throws java.io.IOException
            {
                if(message.hasPattern())
                    output.writeString(1, message.getPattern(), false);
                if(message.hasEscape())
                    output.writeString(2, message.getEscape(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.LikeFilter message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.LikeFilter> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.LikeFilter message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.LikeFilter newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setPattern(input.readString());
                            break;
                        case 2:
                            builder.setEscape(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.LikeFilter.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "pattern";
                case 2: return "escape";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("pattern", 1);
            fieldMap.put("escape", 2);
        }
    }

    public static final class GetCatalogsReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetCatalogsReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetCatalogsReq message) throws java.io.IOException
            {
                if(message.hasCatalogNameFilter())
                    output.writeObject(1, message.getCatalogNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetCatalogsReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetCatalogsReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetCatalogsReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogNameFilter";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogNameFilter", 1);
        }
    }

    public static final class CatalogMetadata
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CatalogMetadata>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CatalogMetadata message) throws java.io.IOException
            {
                if(message.hasCatalogName())
                    output.writeString(1, message.getCatalogName(), false);
                if(message.hasDescription())
                    output.writeString(2, message.getDescription(), false);
                if(message.hasConnect())
                    output.writeString(3, message.getConnect(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CatalogMetadata message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CatalogMetadata> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CatalogMetadata message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.CatalogMetadata newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogName(input.readString());
                            break;
                        case 2:
                            builder.setDescription(input.readString());
                            break;
                        case 3:
                            builder.setConnect(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogName";
                case 2: return "description";
                case 3: return "connect";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogName", 1);
            fieldMap.put("description", 2);
            fieldMap.put("connect", 3);
        }
    }

    public static final class GetCatalogsResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetCatalogsResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetCatalogsResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                for(org.apache.drill.exec.proto.UserProtos.CatalogMetadata catalogs : message.getCatalogsList())
                    output.writeObject(2, catalogs, org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.WRITE, true);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetCatalogsResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetCatalogsResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetCatalogsResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.addCatalogs(input.mergeObject(org.apache.drill.exec.proto.UserProtos.CatalogMetadata.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.CatalogMetadata.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetCatalogsResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "catalogs";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("catalogs", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class GetSchemasReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetSchemasReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetSchemasReq message) throws java.io.IOException
            {
                if(message.hasCatalogNameFilter())
                    output.writeObject(1, message.getCatalogNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasSchemaNameFilter())
                    output.writeObject(2, message.getSchemaNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetSchemasReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetSchemasReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetSchemasReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetSchemasReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 2:
                            builder.setSchemaNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogNameFilter";
                case 2: return "schemaNameFilter";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogNameFilter", 1);
            fieldMap.put("schemaNameFilter", 2);
        }
    }

    public static final class SchemaMetadata
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.SchemaMetadata>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.SchemaMetadata message) throws java.io.IOException
            {
                if(message.hasCatalogName())
                    output.writeString(1, message.getCatalogName(), false);
                if(message.hasSchemaName())
                    output.writeString(2, message.getSchemaName(), false);
                if(message.hasOwner())
                    output.writeString(3, message.getOwner(), false);
                if(message.hasType())
                    output.writeString(4, message.getType(), false);
                if(message.hasMutable())
                    output.writeString(5, message.getMutable(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.SchemaMetadata message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.SchemaMetadata> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.SchemaMetadata message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.SchemaMetadata newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogName(input.readString());
                            break;
                        case 2:
                            builder.setSchemaName(input.readString());
                            break;
                        case 3:
                            builder.setOwner(input.readString());
                            break;
                        case 4:
                            builder.setType(input.readString());
                            break;
                        case 5:
                            builder.setMutable(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogName";
                case 2: return "schemaName";
                case 3: return "owner";
                case 4: return "type";
                case 5: return "mutable";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogName", 1);
            fieldMap.put("schemaName", 2);
            fieldMap.put("owner", 3);
            fieldMap.put("type", 4);
            fieldMap.put("mutable", 5);
        }
    }

    public static final class GetSchemasResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetSchemasResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetSchemasResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                for(org.apache.drill.exec.proto.UserProtos.SchemaMetadata schemas : message.getSchemasList())
                    output.writeObject(2, schemas, org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.WRITE, true);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetSchemasResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetSchemasResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetSchemasResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetSchemasResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.addSchemas(input.mergeObject(org.apache.drill.exec.proto.UserProtos.SchemaMetadata.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.SchemaMetadata.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetSchemasResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "schemas";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("schemas", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class GetTablesReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetTablesReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetTablesReq message) throws java.io.IOException
            {
                if(message.hasCatalogNameFilter())
                    output.writeObject(1, message.getCatalogNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasSchemaNameFilter())
                    output.writeObject(2, message.getSchemaNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasTableNameFilter())
                    output.writeObject(3, message.getTableNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                for(String tableTypeFilter : message.getTableTypeFilterList())
                    output.writeString(4, tableTypeFilter, true);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetTablesReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetTablesReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetTablesReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetTablesReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 2:
                            builder.setSchemaNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 3:
                            builder.setTableNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 4:
                            builder.addTableTypeFilter(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogNameFilter";
                case 2: return "schemaNameFilter";
                case 3: return "tableNameFilter";
                case 4: return "tableTypeFilter";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogNameFilter", 1);
            fieldMap.put("schemaNameFilter", 2);
            fieldMap.put("tableNameFilter", 3);
            fieldMap.put("tableTypeFilter", 4);
        }
    }

    public static final class TableMetadata
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.TableMetadata>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.TableMetadata message) throws java.io.IOException
            {
                if(message.hasCatalogName())
                    output.writeString(1, message.getCatalogName(), false);
                if(message.hasSchemaName())
                    output.writeString(2, message.getSchemaName(), false);
                if(message.hasTableName())
                    output.writeString(3, message.getTableName(), false);
                if(message.hasType())
                    output.writeString(4, message.getType(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.TableMetadata message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.TableMetadata> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.TableMetadata message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.TableMetadata newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogName(input.readString());
                            break;
                        case 2:
                            builder.setSchemaName(input.readString());
                            break;
                        case 3:
                            builder.setTableName(input.readString());
                            break;
                        case 4:
                            builder.setType(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.TableMetadata.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogName";
                case 2: return "schemaName";
                case 3: return "tableName";
                case 4: return "type";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogName", 1);
            fieldMap.put("schemaName", 2);
            fieldMap.put("tableName", 3);
            fieldMap.put("type", 4);
        }
    }

    public static final class GetTablesResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetTablesResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetTablesResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                for(org.apache.drill.exec.proto.UserProtos.TableMetadata tables : message.getTablesList())
                    output.writeObject(2, tables, org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.WRITE, true);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetTablesResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetTablesResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetTablesResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetTablesResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.addTables(input.mergeObject(org.apache.drill.exec.proto.UserProtos.TableMetadata.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.TableMetadata.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetTablesResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetTablesResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "tables";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("tables", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class GetColumnsReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetColumnsReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetColumnsReq message) throws java.io.IOException
            {
                if(message.hasCatalogNameFilter())
                    output.writeObject(1, message.getCatalogNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasSchemaNameFilter())
                    output.writeObject(2, message.getSchemaNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasTableNameFilter())
                    output.writeObject(3, message.getTableNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

                if(message.hasColumnNameFilter())
                    output.writeObject(4, message.getColumnNameFilter(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetColumnsReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetColumnsReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetColumnsReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetColumnsReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 2:
                            builder.setSchemaNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 3:
                            builder.setTableNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        case 4:
                            builder.setColumnNameFilter(input.mergeObject(org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.LikeFilter.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogNameFilter";
                case 2: return "schemaNameFilter";
                case 3: return "tableNameFilter";
                case 4: return "columnNameFilter";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogNameFilter", 1);
            fieldMap.put("schemaNameFilter", 2);
            fieldMap.put("tableNameFilter", 3);
            fieldMap.put("columnNameFilter", 4);
        }
    }

    public static final class ColumnMetadata
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ColumnMetadata>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ColumnMetadata message) throws java.io.IOException
            {
                if(message.hasCatalogName())
                    output.writeString(1, message.getCatalogName(), false);
                if(message.hasSchemaName())
                    output.writeString(2, message.getSchemaName(), false);
                if(message.hasTableName())
                    output.writeString(3, message.getTableName(), false);
                if(message.hasColumnName())
                    output.writeString(4, message.getColumnName(), false);
                if(message.hasOrdinalPosition())
                    output.writeInt32(5, message.getOrdinalPosition(), false);
                if(message.hasDefaultValue())
                    output.writeString(6, message.getDefaultValue(), false);
                if(message.hasIsNullable())
                    output.writeBool(7, message.getIsNullable(), false);
                if(message.hasDataType())
                    output.writeString(8, message.getDataType(), false);
                if(message.hasCharMaxLength())
                    output.writeInt32(9, message.getCharMaxLength(), false);
                if(message.hasCharOctetLength())
                    output.writeInt32(10, message.getCharOctetLength(), false);
                if(message.hasNumericPrecision())
                    output.writeInt32(11, message.getNumericPrecision(), false);
                if(message.hasNumericPrecisionRadix())
                    output.writeInt32(12, message.getNumericPrecisionRadix(), false);
                if(message.hasNumericScale())
                    output.writeInt32(13, message.getNumericScale(), false);
                if(message.hasDateTimePrecision())
                    output.writeInt32(14, message.getDateTimePrecision(), false);
                if(message.hasIntervalType())
                    output.writeString(15, message.getIntervalType(), false);
                if(message.hasIntervalPrecision())
                    output.writeInt32(16, message.getIntervalPrecision(), false);
                if(message.hasColumnSize())
                    output.writeInt32(17, message.getColumnSize(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ColumnMetadata message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ColumnMetadata> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ColumnMetadata message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.ColumnMetadata newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogName(input.readString());
                            break;
                        case 2:
                            builder.setSchemaName(input.readString());
                            break;
                        case 3:
                            builder.setTableName(input.readString());
                            break;
                        case 4:
                            builder.setColumnName(input.readString());
                            break;
                        case 5:
                            builder.setOrdinalPosition(input.readInt32());
                            break;
                        case 6:
                            builder.setDefaultValue(input.readString());
                            break;
                        case 7:
                            builder.setIsNullable(input.readBool());
                            break;
                        case 8:
                            builder.setDataType(input.readString());
                            break;
                        case 9:
                            builder.setCharMaxLength(input.readInt32());
                            break;
                        case 10:
                            builder.setCharOctetLength(input.readInt32());
                            break;
                        case 11:
                            builder.setNumericPrecision(input.readInt32());
                            break;
                        case 12:
                            builder.setNumericPrecisionRadix(input.readInt32());
                            break;
                        case 13:
                            builder.setNumericScale(input.readInt32());
                            break;
                        case 14:
                            builder.setDateTimePrecision(input.readInt32());
                            break;
                        case 15:
                            builder.setIntervalType(input.readString());
                            break;
                        case 16:
                            builder.setIntervalPrecision(input.readInt32());
                            break;
                        case 17:
                            builder.setColumnSize(input.readInt32());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogName";
                case 2: return "schemaName";
                case 3: return "tableName";
                case 4: return "columnName";
                case 5: return "ordinalPosition";
                case 6: return "defaultValue";
                case 7: return "isNullable";
                case 8: return "dataType";
                case 9: return "charMaxLength";
                case 10: return "charOctetLength";
                case 11: return "numericPrecision";
                case 12: return "numericPrecisionRadix";
                case 13: return "numericScale";
                case 14: return "dateTimePrecision";
                case 15: return "intervalType";
                case 16: return "intervalPrecision";
                case 17: return "columnSize";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogName", 1);
            fieldMap.put("schemaName", 2);
            fieldMap.put("tableName", 3);
            fieldMap.put("columnName", 4);
            fieldMap.put("ordinalPosition", 5);
            fieldMap.put("defaultValue", 6);
            fieldMap.put("isNullable", 7);
            fieldMap.put("dataType", 8);
            fieldMap.put("charMaxLength", 9);
            fieldMap.put("charOctetLength", 10);
            fieldMap.put("numericPrecision", 11);
            fieldMap.put("numericPrecisionRadix", 12);
            fieldMap.put("numericScale", 13);
            fieldMap.put("dateTimePrecision", 14);
            fieldMap.put("intervalType", 15);
            fieldMap.put("intervalPrecision", 16);
            fieldMap.put("columnSize", 17);
        }
    }

    public static final class GetColumnsResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetColumnsResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetColumnsResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                for(org.apache.drill.exec.proto.UserProtos.ColumnMetadata columns : message.getColumnsList())
                    output.writeObject(2, columns, org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.WRITE, true);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetColumnsResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetColumnsResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetColumnsResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetColumnsResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.addColumns(input.mergeObject(org.apache.drill.exec.proto.UserProtos.ColumnMetadata.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.ColumnMetadata.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetColumnsResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "columns";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("columns", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class CreatePreparedStatementReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq message) throws java.io.IOException
            {
                if(message.hasSqlQuery())
                    output.writeString(1, message.getSqlQuery(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setSqlQuery(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "sqlQuery";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("sqlQuery", 1);
        }
    }

    public static final class ResultColumnMetadata
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata message) throws java.io.IOException
            {
                if(message.hasCatalogName())
                    output.writeString(1, message.getCatalogName(), false);
                if(message.hasSchemaName())
                    output.writeString(2, message.getSchemaName(), false);
                if(message.hasTableName())
                    output.writeString(3, message.getTableName(), false);
                if(message.hasColumnName())
                    output.writeString(4, message.getColumnName(), false);
                if(message.hasLabel())
                    output.writeString(5, message.getLabel(), false);
                if(message.hasDataType())
                    output.writeString(6, message.getDataType(), false);
                if(message.hasIsNullable())
                    output.writeBool(7, message.getIsNullable(), false);
                if(message.hasPrecision())
                    output.writeInt32(8, message.getPrecision(), false);
                if(message.hasScale())
                    output.writeInt32(9, message.getScale(), false);
                if(message.hasSigned())
                    output.writeBool(10, message.getSigned(), false);
                if(message.hasDisplaySize())
                    output.writeInt32(11, message.getDisplaySize(), false);
                if(message.hasIsAliased())
                    output.writeBool(12, message.getIsAliased(), false);
                if(message.hasSearchability())
                    output.writeEnum(13, message.getSearchability().getNumber(), false);
                if(message.hasUpdatability())
                    output.writeEnum(14, message.getUpdatability().getNumber(), false);
                if(message.hasAutoIncrement())
                    output.writeBool(15, message.getAutoIncrement(), false);
                if(message.hasCaseSensitivity())
                    output.writeBool(16, message.getCaseSensitivity(), false);
                if(message.hasSortable())
                    output.writeBool(17, message.getSortable(), false);
                if(message.hasClassName())
                    output.writeString(18, message.getClassName(), false);
                if(message.hasIsCurrency())
                    output.writeBool(20, message.getIsCurrency(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setCatalogName(input.readString());
                            break;
                        case 2:
                            builder.setSchemaName(input.readString());
                            break;
                        case 3:
                            builder.setTableName(input.readString());
                            break;
                        case 4:
                            builder.setColumnName(input.readString());
                            break;
                        case 5:
                            builder.setLabel(input.readString());
                            break;
                        case 6:
                            builder.setDataType(input.readString());
                            break;
                        case 7:
                            builder.setIsNullable(input.readBool());
                            break;
                        case 8:
                            builder.setPrecision(input.readInt32());
                            break;
                        case 9:
                            builder.setScale(input.readInt32());
                            break;
                        case 10:
                            builder.setSigned(input.readBool());
                            break;
                        case 11:
                            builder.setDisplaySize(input.readInt32());
                            break;
                        case 12:
                            builder.setIsAliased(input.readBool());
                            break;
                        case 13:
                            builder.setSearchability(org.apache.drill.exec.proto.UserProtos.ColumnSearchability.valueOf(input.readEnum()));
                            break;
                        case 14:
                            builder.setUpdatability(org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.valueOf(input.readEnum()));
                            break;
                        case 15:
                            builder.setAutoIncrement(input.readBool());
                            break;
                        case 16:
                            builder.setCaseSensitivity(input.readBool());
                            break;
                        case 17:
                            builder.setSortable(input.readBool());
                            break;
                        case 18:
                            builder.setClassName(input.readString());
                            break;
                        case 20:
                            builder.setIsCurrency(input.readBool());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "catalogName";
                case 2: return "schemaName";
                case 3: return "tableName";
                case 4: return "columnName";
                case 5: return "label";
                case 6: return "dataType";
                case 7: return "isNullable";
                case 8: return "precision";
                case 9: return "scale";
                case 10: return "signed";
                case 11: return "displaySize";
                case 12: return "isAliased";
                case 13: return "searchability";
                case 14: return "updatability";
                case 15: return "autoIncrement";
                case 16: return "caseSensitivity";
                case 17: return "sortable";
                case 18: return "className";
                case 20: return "isCurrency";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("catalogName", 1);
            fieldMap.put("schemaName", 2);
            fieldMap.put("tableName", 3);
            fieldMap.put("columnName", 4);
            fieldMap.put("label", 5);
            fieldMap.put("dataType", 6);
            fieldMap.put("isNullable", 7);
            fieldMap.put("precision", 8);
            fieldMap.put("scale", 9);
            fieldMap.put("signed", 10);
            fieldMap.put("displaySize", 11);
            fieldMap.put("isAliased", 12);
            fieldMap.put("searchability", 13);
            fieldMap.put("updatability", 14);
            fieldMap.put("autoIncrement", 15);
            fieldMap.put("caseSensitivity", 16);
            fieldMap.put("sortable", 17);
            fieldMap.put("className", 18);
            fieldMap.put("isCurrency", 20);
        }
    }

    public static final class PreparedStatementHandle
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle message) throws java.io.IOException
            {
                if(message.hasServerInfo())
                    output.writeByteArray(1, message.getServerInfo().toByteArray(), false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setServerInfo(com.google.protobuf.ByteString.copyFrom(input.readByteArray()));
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "serverInfo";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("serverInfo", 1);
        }
    }

    public static final class PreparedStatement
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.PreparedStatement>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.PreparedStatement message) throws java.io.IOException
            {
                for(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata columns : message.getColumnsList())
                    output.writeObject(1, columns, org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.WRITE, true);

                if(message.hasServerHandle())
                    output.writeObject(2, message.getServerHandle(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.PreparedStatement message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.PreparedStatement> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.PreparedStatement message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.PreparedStatement newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.addColumns(input.mergeObject(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.ResultColumnMetadata.MERGE));

                            break;
                        case 2:
                            builder.setServerHandle(input.mergeObject(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.PreparedStatement.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "columns";
                case 2: return "serverHandle";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("columns", 1);
            fieldMap.put("serverHandle", 2);
        }
    }

    public static final class CreatePreparedStatementResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                if(message.hasPreparedStatement())
                    output.writeObject(2, message.getPreparedStatement(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.WRITE, false);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setPreparedStatement(input.mergeObject(org.apache.drill.exec.proto.UserProtos.PreparedStatement.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatement.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.CreatePreparedStatementResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "preparedStatement";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("preparedStatement", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class GetServerMetaReq
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetServerMetaReq>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetServerMetaReq message) throws java.io.IOException
            {
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetServerMetaReq message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetServerMetaReq> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetServerMetaReq message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaReq.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
        }
    }

    public static final class ConvertSupport
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ConvertSupport>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ConvertSupport message) throws java.io.IOException
            {
                if(message.hasFrom())
                    output.writeEnum(1, message.getFrom().getNumber(), false);
                if(message.hasTo())
                    output.writeEnum(2, message.getTo().getNumber(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ConvertSupport message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ConvertSupport> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ConvertSupport message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.ConvertSupport newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setFrom(org.apache.drill.common.types.TypeProtos.MinorType.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setTo(org.apache.drill.common.types.TypeProtos.MinorType.valueOf(input.readEnum()));
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ConvertSupport.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "from";
                case 2: return "to";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("from", 1);
            fieldMap.put("to", 2);
        }
    }

    public static final class GetServerMetaResp
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetServerMetaResp>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetServerMetaResp message) throws java.io.IOException
            {
                if(message.hasStatus())
                    output.writeEnum(1, message.getStatus().getNumber(), false);
                if(message.hasServerMeta())
                    output.writeObject(2, message.getServerMeta(), org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.WRITE, false);

                if(message.hasError())
                    output.writeObject(3, message.getError(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.WRITE, false);

            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetServerMetaResp message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetServerMetaResp> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetServerMetaResp message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setStatus(org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setServerMeta(input.mergeObject(org.apache.drill.exec.proto.UserProtos.ServerMeta.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.MERGE));

                            break;
                        case 3:
                            builder.setError(input.mergeObject(org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(), org.apache.drill.exec.proto.SchemaUserBitShared.DrillPBError.MERGE));

                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.GetServerMetaResp.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "status";
                case 2: return "serverMeta";
                case 3: return "error";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("status", 1);
            fieldMap.put("serverMeta", 2);
            fieldMap.put("error", 3);
        }
    }

    public static final class ServerMeta
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ServerMeta>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ServerMeta message) throws java.io.IOException
            {
                if(message.hasAllTablesSelectable())
                    output.writeBool(1, message.getAllTablesSelectable(), false);
                if(message.hasBlobIncludedInMaxRowSize())
                    output.writeBool(2, message.getBlobIncludedInMaxRowSize(), false);
                if(message.hasCatalogAtStart())
                    output.writeBool(3, message.getCatalogAtStart(), false);
                if(message.hasCatalogSeparator())
                    output.writeString(4, message.getCatalogSeparator(), false);
                if(message.hasCatalogTerm())
                    output.writeString(5, message.getCatalogTerm(), false);
                for(org.apache.drill.exec.proto.UserProtos.CollateSupport collateSupport : message.getCollateSupportList())
                    output.writeEnum(6, collateSupport.getNumber(), true);
                if(message.hasColumnAliasingSupported())
                    output.writeBool(7, message.getColumnAliasingSupported(), false);
                for(org.apache.drill.exec.proto.UserProtos.ConvertSupport convertSupport : message.getConvertSupportList())
                    output.writeObject(8, convertSupport, org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.WRITE, true);

                if(message.hasCorrelationNamesSupport())
                    output.writeEnum(9, message.getCorrelationNamesSupport().getNumber(), false);
                for(String dateTimeFunctions : message.getDateTimeFunctionsList())
                    output.writeString(10, dateTimeFunctions, true);
                for(org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport dateTimeLiteralsSupport : message.getDateTimeLiteralsSupportList())
                    output.writeEnum(11, dateTimeLiteralsSupport.getNumber(), true);
                if(message.hasGroupBySupport())
                    output.writeEnum(12, message.getGroupBySupport().getNumber(), false);
                if(message.hasIdentifierCasing())
                    output.writeEnum(13, message.getIdentifierCasing().getNumber(), false);
                if(message.hasIdentifierQuoteString())
                    output.writeString(14, message.getIdentifierQuoteString(), false);
                if(message.hasLikeEscapeClauseSupported())
                    output.writeBool(15, message.getLikeEscapeClauseSupported(), false);
                if(message.hasMaxBinaryLiteralLength())
                    output.writeUInt32(16, message.getMaxBinaryLiteralLength(), false);
                if(message.hasMaxCatalogNameLength())
                    output.writeUInt32(17, message.getMaxCatalogNameLength(), false);
                if(message.hasMaxCharLiteralLength())
                    output.writeUInt32(18, message.getMaxCharLiteralLength(), false);
                if(message.hasMaxColumnNameLength())
                    output.writeUInt32(19, message.getMaxColumnNameLength(), false);
                if(message.hasMaxColumnsInGroupBy())
                    output.writeUInt32(20, message.getMaxColumnsInGroupBy(), false);
                if(message.hasMaxColumnsInOrderBy())
                    output.writeUInt32(21, message.getMaxColumnsInOrderBy(), false);
                if(message.hasMaxColumnsInSelect())
                    output.writeUInt32(22, message.getMaxColumnsInSelect(), false);
                if(message.hasMaxCursorNameLength())
                    output.writeUInt32(23, message.getMaxCursorNameLength(), false);
                if(message.hasMaxLogicalLobSize())
                    output.writeUInt32(24, message.getMaxLogicalLobSize(), false);
                if(message.hasMaxRowSize())
                    output.writeUInt32(25, message.getMaxRowSize(), false);
                if(message.hasMaxSchemaNameLength())
                    output.writeUInt32(26, message.getMaxSchemaNameLength(), false);
                if(message.hasMaxStatementLength())
                    output.writeUInt32(27, message.getMaxStatementLength(), false);
                if(message.hasMaxStatements())
                    output.writeUInt32(28, message.getMaxStatements(), false);
                if(message.hasMaxTableNameLength())
                    output.writeUInt32(29, message.getMaxTableNameLength(), false);
                if(message.hasMaxTablesInSelect())
                    output.writeUInt32(30, message.getMaxTablesInSelect(), false);
                if(message.hasMaxUserNameLength())
                    output.writeUInt32(31, message.getMaxUserNameLength(), false);
                if(message.hasNullCollation())
                    output.writeEnum(32, message.getNullCollation().getNumber(), false);
                if(message.hasNullPlusNonNullEqualsNull())
                    output.writeBool(33, message.getNullPlusNonNullEqualsNull(), false);
                for(String numericFunctions : message.getNumericFunctionsList())
                    output.writeString(34, numericFunctions, true);
                for(org.apache.drill.exec.proto.UserProtos.OrderBySupport orderBySupport : message.getOrderBySupportList())
                    output.writeEnum(35, orderBySupport.getNumber(), true);
                for(org.apache.drill.exec.proto.UserProtos.OuterJoinSupport outerJoinSupport : message.getOuterJoinSupportList())
                    output.writeEnum(36, outerJoinSupport.getNumber(), true);
                if(message.hasQuotedIdentifierCasing())
                    output.writeEnum(37, message.getQuotedIdentifierCasing().getNumber(), false);
                if(message.hasReadOnly())
                    output.writeBool(38, message.getReadOnly(), false);
                if(message.hasSchemaTerm())
                    output.writeString(39, message.getSchemaTerm(), false);
                if(message.hasSearchEscapeString())
                    output.writeString(40, message.getSearchEscapeString(), false);
                if(message.hasSelectForUpdateSupported())
                    output.writeBool(41, message.getSelectForUpdateSupported(), false);
                if(message.hasSpecialCharacters())
                    output.writeString(42, message.getSpecialCharacters(), false);
                for(String sqlKeywords : message.getSqlKeywordsList())
                    output.writeString(43, sqlKeywords, true);
                for(String stringFunctions : message.getStringFunctionsList())
                    output.writeString(44, stringFunctions, true);
                for(org.apache.drill.exec.proto.UserProtos.SubQuerySupport subquerySupport : message.getSubquerySupportList())
                    output.writeEnum(45, subquerySupport.getNumber(), true);
                for(String systemFunctions : message.getSystemFunctionsList())
                    output.writeString(46, systemFunctions, true);
                if(message.hasTableTerm())
                    output.writeString(47, message.getTableTerm(), false);
                if(message.hasTransactionSupported())
                    output.writeBool(48, message.getTransactionSupported(), false);
                for(org.apache.drill.exec.proto.UserProtos.UnionSupport unionSupport : message.getUnionSupportList())
                    output.writeEnum(49, unionSupport.getNumber(), true);
                if(message.hasCurrentSchema())
                    output.writeString(50, message.getCurrentSchema(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ServerMeta message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ServerMeta> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ServerMeta message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.ServerMeta newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setAllTablesSelectable(input.readBool());
                            break;
                        case 2:
                            builder.setBlobIncludedInMaxRowSize(input.readBool());
                            break;
                        case 3:
                            builder.setCatalogAtStart(input.readBool());
                            break;
                        case 4:
                            builder.setCatalogSeparator(input.readString());
                            break;
                        case 5:
                            builder.setCatalogTerm(input.readString());
                            break;
                        case 6:
                            builder.addCollateSupport(org.apache.drill.exec.proto.UserProtos.CollateSupport.valueOf(input.readEnum()));
                            break;
                        case 7:
                            builder.setColumnAliasingSupported(input.readBool());
                            break;
                        case 8:
                            builder.addConvertSupport(input.mergeObject(org.apache.drill.exec.proto.UserProtos.ConvertSupport.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.ConvertSupport.MERGE));

                            break;
                        case 9:
                            builder.setCorrelationNamesSupport(org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.valueOf(input.readEnum()));
                            break;
                        case 10:
                            builder.addDateTimeFunctions(input.readString());
                            break;
                        case 11:
                            builder.addDateTimeLiteralsSupport(org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport.valueOf(input.readEnum()));
                            break;
                        case 12:
                            builder.setGroupBySupport(org.apache.drill.exec.proto.UserProtos.GroupBySupport.valueOf(input.readEnum()));
                            break;
                        case 13:
                            builder.setIdentifierCasing(org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(input.readEnum()));
                            break;
                        case 14:
                            builder.setIdentifierQuoteString(input.readString());
                            break;
                        case 15:
                            builder.setLikeEscapeClauseSupported(input.readBool());
                            break;
                        case 16:
                            builder.setMaxBinaryLiteralLength(input.readUInt32());
                            break;
                        case 17:
                            builder.setMaxCatalogNameLength(input.readUInt32());
                            break;
                        case 18:
                            builder.setMaxCharLiteralLength(input.readUInt32());
                            break;
                        case 19:
                            builder.setMaxColumnNameLength(input.readUInt32());
                            break;
                        case 20:
                            builder.setMaxColumnsInGroupBy(input.readUInt32());
                            break;
                        case 21:
                            builder.setMaxColumnsInOrderBy(input.readUInt32());
                            break;
                        case 22:
                            builder.setMaxColumnsInSelect(input.readUInt32());
                            break;
                        case 23:
                            builder.setMaxCursorNameLength(input.readUInt32());
                            break;
                        case 24:
                            builder.setMaxLogicalLobSize(input.readUInt32());
                            break;
                        case 25:
                            builder.setMaxRowSize(input.readUInt32());
                            break;
                        case 26:
                            builder.setMaxSchemaNameLength(input.readUInt32());
                            break;
                        case 27:
                            builder.setMaxStatementLength(input.readUInt32());
                            break;
                        case 28:
                            builder.setMaxStatements(input.readUInt32());
                            break;
                        case 29:
                            builder.setMaxTableNameLength(input.readUInt32());
                            break;
                        case 30:
                            builder.setMaxTablesInSelect(input.readUInt32());
                            break;
                        case 31:
                            builder.setMaxUserNameLength(input.readUInt32());
                            break;
                        case 32:
                            builder.setNullCollation(org.apache.drill.exec.proto.UserProtos.NullCollation.valueOf(input.readEnum()));
                            break;
                        case 33:
                            builder.setNullPlusNonNullEqualsNull(input.readBool());
                            break;
                        case 34:
                            builder.addNumericFunctions(input.readString());
                            break;
                        case 35:
                            builder.addOrderBySupport(org.apache.drill.exec.proto.UserProtos.OrderBySupport.valueOf(input.readEnum()));
                            break;
                        case 36:
                            builder.addOuterJoinSupport(org.apache.drill.exec.proto.UserProtos.OuterJoinSupport.valueOf(input.readEnum()));
                            break;
                        case 37:
                            builder.setQuotedIdentifierCasing(org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(input.readEnum()));
                            break;
                        case 38:
                            builder.setReadOnly(input.readBool());
                            break;
                        case 39:
                            builder.setSchemaTerm(input.readString());
                            break;
                        case 40:
                            builder.setSearchEscapeString(input.readString());
                            break;
                        case 41:
                            builder.setSelectForUpdateSupported(input.readBool());
                            break;
                        case 42:
                            builder.setSpecialCharacters(input.readString());
                            break;
                        case 43:
                            builder.addSqlKeywords(input.readString());
                            break;
                        case 44:
                            builder.addStringFunctions(input.readString());
                            break;
                        case 45:
                            builder.addSubquerySupport(org.apache.drill.exec.proto.UserProtos.SubQuerySupport.valueOf(input.readEnum()));
                            break;
                        case 46:
                            builder.addSystemFunctions(input.readString());
                            break;
                        case 47:
                            builder.setTableTerm(input.readString());
                            break;
                        case 48:
                            builder.setTransactionSupported(input.readBool());
                            break;
                        case 49:
                            builder.addUnionSupport(org.apache.drill.exec.proto.UserProtos.UnionSupport.valueOf(input.readEnum()));
                            break;
                        case 50:
                            builder.setCurrentSchema(input.readString());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.ServerMeta.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.ServerMeta.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "allTablesSelectable";
                case 2: return "blobIncludedInMaxRowSize";
                case 3: return "catalogAtStart";
                case 4: return "catalogSeparator";
                case 5: return "catalogTerm";
                case 6: return "collateSupport";
                case 7: return "columnAliasingSupported";
                case 8: return "convertSupport";
                case 9: return "correlationNamesSupport";
                case 10: return "dateTimeFunctions";
                case 11: return "dateTimeLiteralsSupport";
                case 12: return "groupBySupport";
                case 13: return "identifierCasing";
                case 14: return "identifierQuoteString";
                case 15: return "likeEscapeClauseSupported";
                case 16: return "maxBinaryLiteralLength";
                case 17: return "maxCatalogNameLength";
                case 18: return "maxCharLiteralLength";
                case 19: return "maxColumnNameLength";
                case 20: return "maxColumnsInGroupBy";
                case 21: return "maxColumnsInOrderBy";
                case 22: return "maxColumnsInSelect";
                case 23: return "maxCursorNameLength";
                case 24: return "maxLogicalLobSize";
                case 25: return "maxRowSize";
                case 26: return "maxSchemaNameLength";
                case 27: return "maxStatementLength";
                case 28: return "maxStatements";
                case 29: return "maxTableNameLength";
                case 30: return "maxTablesInSelect";
                case 31: return "maxUserNameLength";
                case 32: return "nullCollation";
                case 33: return "nullPlusNonNullEqualsNull";
                case 34: return "numericFunctions";
                case 35: return "orderBySupport";
                case 36: return "outerJoinSupport";
                case 37: return "quotedIdentifierCasing";
                case 38: return "readOnly";
                case 39: return "schemaTerm";
                case 40: return "searchEscapeString";
                case 41: return "selectForUpdateSupported";
                case 42: return "specialCharacters";
                case 43: return "sqlKeywords";
                case 44: return "stringFunctions";
                case 45: return "subquerySupport";
                case 46: return "systemFunctions";
                case 47: return "tableTerm";
                case 48: return "transactionSupported";
                case 49: return "unionSupport";
                case 50: return "currentSchema";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("allTablesSelectable", 1);
            fieldMap.put("blobIncludedInMaxRowSize", 2);
            fieldMap.put("catalogAtStart", 3);
            fieldMap.put("catalogSeparator", 4);
            fieldMap.put("catalogTerm", 5);
            fieldMap.put("collateSupport", 6);
            fieldMap.put("columnAliasingSupported", 7);
            fieldMap.put("convertSupport", 8);
            fieldMap.put("correlationNamesSupport", 9);
            fieldMap.put("dateTimeFunctions", 10);
            fieldMap.put("dateTimeLiteralsSupport", 11);
            fieldMap.put("groupBySupport", 12);
            fieldMap.put("identifierCasing", 13);
            fieldMap.put("identifierQuoteString", 14);
            fieldMap.put("likeEscapeClauseSupported", 15);
            fieldMap.put("maxBinaryLiteralLength", 16);
            fieldMap.put("maxCatalogNameLength", 17);
            fieldMap.put("maxCharLiteralLength", 18);
            fieldMap.put("maxColumnNameLength", 19);
            fieldMap.put("maxColumnsInGroupBy", 20);
            fieldMap.put("maxColumnsInOrderBy", 21);
            fieldMap.put("maxColumnsInSelect", 22);
            fieldMap.put("maxCursorNameLength", 23);
            fieldMap.put("maxLogicalLobSize", 24);
            fieldMap.put("maxRowSize", 25);
            fieldMap.put("maxSchemaNameLength", 26);
            fieldMap.put("maxStatementLength", 27);
            fieldMap.put("maxStatements", 28);
            fieldMap.put("maxTableNameLength", 29);
            fieldMap.put("maxTablesInSelect", 30);
            fieldMap.put("maxUserNameLength", 31);
            fieldMap.put("nullCollation", 32);
            fieldMap.put("nullPlusNonNullEqualsNull", 33);
            fieldMap.put("numericFunctions", 34);
            fieldMap.put("orderBySupport", 35);
            fieldMap.put("outerJoinSupport", 36);
            fieldMap.put("quotedIdentifierCasing", 37);
            fieldMap.put("readOnly", 38);
            fieldMap.put("schemaTerm", 39);
            fieldMap.put("searchEscapeString", 40);
            fieldMap.put("selectForUpdateSupported", 41);
            fieldMap.put("specialCharacters", 42);
            fieldMap.put("sqlKeywords", 43);
            fieldMap.put("stringFunctions", 44);
            fieldMap.put("subquerySupport", 45);
            fieldMap.put("systemFunctions", 46);
            fieldMap.put("tableTerm", 47);
            fieldMap.put("transactionSupported", 48);
            fieldMap.put("unionSupport", 49);
            fieldMap.put("currentSchema", 50);
        }
    }

    public static final class RunQuery
    {
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.MessageSchema WRITE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.MessageSchema();
        public static final org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.BuilderSchema MERGE =
            new org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.BuilderSchema();
        
        public static class MessageSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RunQuery>
        {
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RunQuery message) throws java.io.IOException
            {
                if(message.hasResultsMode())
                    output.writeEnum(1, message.getResultsMode().getNumber(), false);
                if(message.hasType())
                    output.writeEnum(2, message.getType().getNumber(), false);
                if(message.hasPlan())
                    output.writeString(3, message.getPlan(), false);
                for(org.apache.drill.exec.proto.BitControl.PlanFragment fragments : message.getFragmentsList())
                    output.writeObject(4, fragments, org.apache.drill.exec.proto.SchemaBitControl.PlanFragment.WRITE, true);

                if(message.hasPreparedStatementHandle())
                    output.writeObject(5, message.getPreparedStatementHandle(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.WRITE, false);

                if(message.hasAutolimitRowcount())
                    output.writeInt32(6, message.getAutolimitRowcount(), false);
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RunQuery message)
            {
                return message.isInitialized();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RunQuery> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.class.getName();
            }
            //unused
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RunQuery message) throws java.io.IOException {}
            public org.apache.drill.exec.proto.UserProtos.RunQuery newMessage() { return null; }
        }
        public static class BuilderSchema implements io.protostuff.Schema<org.apache.drill.exec.proto.UserProtos.RunQuery.Builder>
        {
            public void mergeFrom(io.protostuff.Input input, org.apache.drill.exec.proto.UserProtos.RunQuery.Builder builder) throws java.io.IOException
            {
                for(int number = input.readFieldNumber(this);; number = input.readFieldNumber(this))
                {
                    switch(number)
                    {
                        case 0:
                            return;
                        case 1:
                            builder.setResultsMode(org.apache.drill.exec.proto.UserProtos.QueryResultsMode.valueOf(input.readEnum()));
                            break;
                        case 2:
                            builder.setType(org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(input.readEnum()));
                            break;
                        case 3:
                            builder.setPlan(input.readString());
                            break;
                        case 4:
                            builder.addFragments(input.mergeObject(org.apache.drill.exec.proto.BitControl.PlanFragment.newBuilder(), org.apache.drill.exec.proto.SchemaBitControl.PlanFragment.MERGE));

                            break;
                        case 5:
                            builder.setPreparedStatementHandle(input.mergeObject(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.newBuilder(), org.apache.drill.exec.proto.SchemaUserProtos.PreparedStatementHandle.MERGE));

                            break;
                        case 6:
                            builder.setAutolimitRowcount(input.readInt32());
                            break;
                        default:
                            input.handleUnknownField(number, this);
                    }
                }
            }
            public boolean isInitialized(org.apache.drill.exec.proto.UserProtos.RunQuery.Builder builder)
            {
                return builder.isInitialized();
            }
            public org.apache.drill.exec.proto.UserProtos.RunQuery.Builder newMessage()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.newBuilder();
            }
            public java.lang.String getFieldName(int number)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.getFieldName(number);
            }
            public int getFieldNumber(java.lang.String name)
            {
                return org.apache.drill.exec.proto.SchemaUserProtos.RunQuery.getFieldNumber(name);
            }
            public java.lang.Class<org.apache.drill.exec.proto.UserProtos.RunQuery.Builder> typeClass()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.Builder.class;
            }
            public java.lang.String messageName()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.class.getSimpleName();
            }
            public java.lang.String messageFullName()
            {
                return org.apache.drill.exec.proto.UserProtos.RunQuery.class.getName();
            }
            //unused
            public void writeTo(io.protostuff.Output output, org.apache.drill.exec.proto.UserProtos.RunQuery.Builder builder) throws java.io.IOException {}
        }
        public static java.lang.String getFieldName(int number)
        {
            switch(number)
            {
                case 1: return "resultsMode";
                case 2: return "type";
                case 3: return "plan";
                case 4: return "fragments";
                case 5: return "preparedStatementHandle";
                case 6: return "autolimitRowcount";
                default: return null;
            }
        }
        public static int getFieldNumber(java.lang.String name)
        {
            java.lang.Integer number = fieldMap.get(name);
            return number == null ? 0 : number.intValue();
        }
        private static final java.util.HashMap<java.lang.String,java.lang.Integer> fieldMap = new java.util.HashMap<java.lang.String,java.lang.Integer>();
        static
        {
            fieldMap.put("resultsMode", 1);
            fieldMap.put("type", 2);
            fieldMap.put("plan", 3);
            fieldMap.put("fragments", 4);
            fieldMap.put("preparedStatementHandle", 5);
            fieldMap.put("autolimitRowcount", 6);
        }
    }

}
