content: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: internal_def/internal.proto
  
  package protobuf.generate.internal;
  
  public final class Internal {
    private Internal() {}
    public static void registerAllExtensions(
        com.google.protobuf.ExtensionRegistry registry) {
    }
    /**
     * Protobuf enum {@code Dest}
     */
    public enum Dest
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>Client = 1;</code>
       */
      Client(0, 1),
      /**
       * <code>Auth = 2;</code>
       */
      Auth(1, 2),
      /**
       * <code>Logic = 3;</code>
       */
      Logic(2, 3),
      /**
       * <code>Gate = 4;</code>
       */
      Gate(3, 4),
      ;
  
      /**
       * <code>Client = 1;</code>
       */
      public static final int Client_VALUE = 1;
      /**
       * <code>Auth = 2;</code>
       */
      public static final int Auth_VALUE = 2;
      /**
       * <code>Logic = 3;</code>
       */
      public static final int Logic_VALUE = 3;
      /**
       * <code>Gate = 4;</code>
       */
      public static final int Gate_VALUE = 4;
  
  
      public final int getNumber() { return value; }
  
      public static Dest valueOf(int value) {
        switch (value) {
          case 1: return Client;
          case 2: return Auth;
          case 3: return Logic;
          case 4: return Gate;
          default: return null;
        }
      }
  
      public static com.google.protobuf.Internal.EnumLiteMap<Dest>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static com.google.protobuf.Internal.EnumLiteMap<Dest>
          internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Dest>() {
              public Dest findValueByNumber(int number) {
                return Dest.valueOf(number);
              }
            };
  
      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(index);
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return protobuf.generate.internal.Internal.getDescriptor().getEnumTypes().get(0);
      }
  
      private static final Dest[] VALUES = values();
  
      public static Dest valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int index;
      private final int value;
  
      private Dest(int index, int value) {
        this.index = index;
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:Dest)
    }
  
    public interface GTransferOrBuilder
        extends com.google.protobuf.MessageOrBuilder {
  
      // required .Dest dest = 1;
      /**
       * <code>required .Dest dest = 1;</code>
       */
      boolean hasDest();
      /**
       * <code>required .Dest dest = 1;</code>
       */
      protobuf.generate.internal.Internal.Dest getDest();
  
      // optional uint64 netId = 2;
      /**
       * <code>optional uint64 netId = 2;</code>
       */
      boolean hasNetId();
      /**
       * <code>optional uint64 netId = 2;</code>
       */
      long getNetId();
  
      // required string userId = 3;
      /**
       * <code>required string userId = 3;</code>
       */
      boolean hasUserId();
      /**
       * <code>required string userId = 3;</code>
       */
      java.lang.String getUserId();
      /**
       * <code>required string userId = 3;</code>
       */
      com.google.protobuf.ByteString
          getUserIdBytes();
  
      // required uint32 ptoNum = 4;
      /**
       * <code>required uint32 ptoNum = 4;</code>
       */
      boolean hasPtoNum();
      /**
       * <code>required uint32 ptoNum = 4;</code>
       */
      int getPtoNum();
  
      // required bytes msg = 5;
      /**
       * <code>required bytes msg = 5;</code>
       */
      boolean hasMsg();
      /**
       * <code>required bytes msg = 5;</code>
       */
      com.google.protobuf.ByteString getMsg();
    }
    /**
     * Protobuf type {@code GTransfer}
     *
     * <pre>
     *服务间的中转协议
     * </pre>
     */
    public static final class GTransfer extends
        com.google.protobuf.GeneratedMessage
        implements GTransferOrBuilder {
      // Use GTransfer.newBuilder() to construct.
      private GTransfer(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private GTransfer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
  
      private static final GTransfer defaultInstance;
      public static GTransfer getDefaultInstance() {
        return defaultInstance;
      }
  
      public GTransfer getDefaultInstanceForType() {
        return defaultInstance;
      }
  
      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private GTransfer(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                int rawValue = input.readEnum();
                protobuf.generate.internal.Internal.Dest value = protobuf.generate.internal.Internal.Dest.valueOf(rawValue);
                if (value == null) {
                  unknownFields.mergeVarintField(1, rawValue);
                } else {
                  bitField0_ |= 0x00000001;
                  dest_ = value;
                }
                break;
              }
              case 16: {
                bitField0_ |= 0x00000002;
                netId_ = input.readUInt64();
                break;
              }
              case 26: {
                bitField0_ |= 0x00000004;
                userId_ = input.readBytes();
                break;
              }
              case 32: {
                bitField0_ |= 0x00000008;
                ptoNum_ = input.readUInt32();
                break;
              }
              case 42: {
                bitField0_ |= 0x00000010;
                msg_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return protobuf.generate.internal.Internal.internal_static_GTransfer_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return protobuf.generate.internal.Internal.internal_static_GTransfer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                protobuf.generate.internal.Internal.GTransfer.class, protobuf.generate.internal.Internal.GTransfer.Builder.class);
      }
  
      public static com.google.protobuf.Parser<GTransfer> PARSER =
          new com.google.protobuf.AbstractParser<GTransfer>() {
        public GTransfer parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new GTransfer(input, extensionRegistry);
        }
      };
  
      @java.lang.Override
      public com.google.protobuf.Parser<GTransfer> getParserForType() {
        return PARSER;
      }
  
      private int bitField0_;
      // required .Dest dest = 1;
      public static final int DEST_FIELD_NUMBER = 1;
      private protobuf.generate.internal.Internal.Dest dest_;
      /**
       * <code>required .Dest dest = 1;</code>
       */
      public boolean hasDest() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>required .Dest dest = 1;</code>
       */
      public protobuf.generate.internal.Internal.Dest getDest() {
        return dest_;
      }
  
      // optional uint64 netId = 2;
      public static final int NETID_FIELD_NUMBER = 2;
      private long netId_;
      /**
       * <code>optional uint64 netId = 2;</code>
       */
      public boolean hasNetId() {
        return ((bitField0_ & 0x00000002) == 0x00000002);
      }
      /**
       * <code>optional uint64 netId = 2;</code>
       */
      public long getNetId() {
        return netId_;
      }
  
      // required string userId = 3;
      public static final int USERID_FIELD_NUMBER = 3;
      private java.lang.Object userId_;
      /**
       * <code>required string userId = 3;</code>
       */
      public boolean hasUserId() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * <code>required string userId = 3;</code>
       */
      public java.lang.String getUserId() {
        java.lang.Object ref = userId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            userId_ = s;
          }
          return s;
        }
      }
      /**
       * <code>required string userId = 3;</code>
       */
      public com.google.protobuf.ByteString
          getUserIdBytes() {
        java.lang.Object ref = userId_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          userId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      // required uint32 ptoNum = 4;
      public static final int PTONUM_FIELD_NUMBER = 4;
      private int ptoNum_;
      /**
       * <code>required uint32 ptoNum = 4;</code>
       */
      public boolean hasPtoNum() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * <code>required uint32 ptoNum = 4;</code>
       */
      public int getPtoNum() {
        return ptoNum_;
      }
  
      // required bytes msg = 5;
      public static final int MSG_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString msg_;
      /**
       * <code>required bytes msg = 5;</code>
       */
      public boolean hasMsg() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * <code>required bytes msg = 5;</code>
       */
      public com.google.protobuf.ByteString getMsg() {
        return msg_;
      }
  
      private void initFields() {
        dest_ = protobuf.generate.internal.Internal.Dest.Client;
        netId_ = 0L;
        userId_ = "";
        ptoNum_ = 0;
        msg_ = com.google.protobuf.ByteString.EMPTY;
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized != -1) return isInitialized == 1;
  
        if (!hasDest()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasUserId()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasPtoNum()) {
          memoizedIsInitialized = 0;
          return false;
        }
        if (!hasMsg()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          output.writeEnum(1, dest_.getNumber());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          output.writeUInt64(2, netId_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          output.writeBytes(3, getUserIdBytes());
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          output.writeUInt32(4, ptoNum_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          output.writeBytes(5, msg_);
        }
        getUnknownFields().writeTo(output);
      }
  
      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          size += com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, dest_.getNumber());
        }
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, netId_);
        }
        if (((bitField0_ & 0x00000004) == 0x00000004)) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, getUserIdBytes());
        }
        if (((bitField0_ & 0x00000008) == 0x00000008)) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(4, ptoNum_);
        }
        if (((bitField0_ & 0x00000010) == 0x00000010)) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, msg_);
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }
  
      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }
  
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static protobuf.generate.internal.Internal.GTransfer parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
  
      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(protobuf.generate.internal.Internal.GTransfer prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code GTransfer}
       *
       * <pre>
       *服务间的中转协议
       * </pre>
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder<Builder>
         implements protobuf.generate.internal.Internal.GTransferOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return protobuf.generate.internal.Internal.internal_static_GTransfer_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return protobuf.generate.internal.Internal.internal_static_GTransfer_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  protobuf.generate.internal.Internal.GTransfer.class, protobuf.generate.internal.Internal.GTransfer.Builder.class);
        }
  
        // Construct using protobuf.generate.internal.Internal.GTransfer.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          }
        }
        private static Builder create() {
          return new Builder();
        }
  
        public Builder clear() {
          super.clear();
          dest_ = protobuf.generate.internal.Internal.Dest.Client;
          bitField0_ = (bitField0_ & ~0x00000001);
          netId_ = 0L;
          bitField0_ = (bitField0_ & ~0x00000002);
          userId_ = "";
          bitField0_ = (bitField0_ & ~0x00000004);
          ptoNum_ = 0;
          bitField0_ = (bitField0_ & ~0x00000008);
          msg_ = com.google.protobuf.ByteString.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000010);
          return this;
        }
  
        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return protobuf.generate.internal.Internal.internal_static_GTransfer_descriptor;
        }
  
        public protobuf.generate.internal.Internal.GTransfer getDefaultInstanceForType() {
          return protobuf.generate.internal.Internal.GTransfer.getDefaultInstance();
        }
  
        public protobuf.generate.internal.Internal.GTransfer build() {
          protobuf.generate.internal.Internal.GTransfer result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public protobuf.generate.internal.Internal.GTransfer buildPartial() {
          protobuf.generate.internal.Internal.GTransfer result = new protobuf.generate.internal.Internal.GTransfer(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
            to_bitField0_ |= 0x00000001;
          }
          result.dest_ = dest_;
          if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
            to_bitField0_ |= 0x00000002;
          }
          result.netId_ = netId_;
          if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
            to_bitField0_ |= 0x00000004;
          }
          result.userId_ = userId_;
          if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
            to_bitField0_ |= 0x00000008;
          }
          result.ptoNum_ = ptoNum_;
          if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
            to_bitField0_ |= 0x00000010;
          }
          result.msg_ = msg_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof protobuf.generate.internal.Internal.GTransfer) {
            return mergeFrom((protobuf.generate.internal.Internal.GTransfer)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(protobuf.generate.internal.Internal.GTransfer other) {
          if (other == protobuf.generate.internal.Internal.GTransfer.getDefaultInstance()) return this;
          if (other.hasDest()) {
            setDest(other.getDest());
          }
          if (other.hasNetId()) {
            setNetId(other.getNetId());
          }
          if (other.hasUserId()) {
            bitField0_ |= 0x00000004;
            userId_ = other.userId_;
            onChanged();
          }
          if (other.hasPtoNum()) {
            setPtoNum(other.getPtoNum());
          }
          if (other.hasMsg()) {
            setMsg(other.getMsg());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }
  
        public final boolean isInitialized() {
          if (!hasDest()) {
            
            return false;
          }
          if (!hasUserId()) {
            
            return false;
          }
          if (!hasPtoNum()) {
            
            return false;
          }
          if (!hasMsg()) {
            
            return false;
          }
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          protobuf.generate.internal.Internal.GTransfer parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (protobuf.generate.internal.Internal.GTransfer) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        // required .Dest dest = 1;
        private protobuf.generate.internal.Internal.Dest dest_ = protobuf.generate.internal.Internal.Dest.Client;
        /**
         * <code>required .Dest dest = 1;</code>
         */
        public boolean hasDest() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * <code>required .Dest dest = 1;</code>
         */
        public protobuf.generate.internal.Internal.Dest getDest() {
          return dest_;
        }
        /**
         * <code>required .Dest dest = 1;</code>
         */
        public Builder setDest(protobuf.generate.internal.Internal.Dest value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          dest_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>required .Dest dest = 1;</code>
         */
        public Builder clearDest() {
          bitField0_ = (bitField0_ & ~0x00000001);
          dest_ = protobuf.generate.internal.Internal.Dest.Client;
          onChanged();
          return this;
        }
  
        // optional uint64 netId = 2;
        private long netId_ ;
        /**
         * <code>optional uint64 netId = 2;</code>
         */
        public boolean hasNetId() {
          return ((bitField0_ & 0x00000002) == 0x00000002);
        }
        /**
         * <code>optional uint64 netId = 2;</code>
         */
        public long getNetId() {
          return netId_;
        }
        /**
         * <code>optional uint64 netId = 2;</code>
         */
        public Builder setNetId(long value) {
          bitField0_ |= 0x00000002;
          netId_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>optional uint64 netId = 2;</code>
         */
        public Builder clearNetId() {
          bitField0_ = (bitField0_ & ~0x00000002);
          netId_ = 0L;
          onChanged();
          return this;
        }
  
        // required string userId = 3;
        private java.lang.Object userId_ = "";
        /**
         * <code>required string userId = 3;</code>
         */
        public boolean hasUserId() {
          return ((bitField0_ & 0x00000004) == 0x00000004);
        }
        /**
         * <code>required string userId = 3;</code>
         */
        public java.lang.String getUserId() {
          java.lang.Object ref = userId_;
          if (!(ref instanceof java.lang.String)) {
            java.lang.String s = ((com.google.protobuf.ByteString) ref)
                .toStringUtf8();
            userId_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>required string userId = 3;</code>
         */
        public com.google.protobuf.ByteString
            getUserIdBytes() {
          java.lang.Object ref = userId_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            userId_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>required string userId = 3;</code>
         */
        public Builder setUserId(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    bitField0_ |= 0x00000004;
          userId_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>required string userId = 3;</code>
         */
        public Builder clearUserId() {
          bitField0_ = (bitField0_ & ~0x00000004);
          userId_ = getDefaultInstance().getUserId();
          onChanged();
          return this;
        }
        /**
         * <code>required string userId = 3;</code>
         */
        public Builder setUserIdBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    bitField0_ |= 0x00000004;
          userId_ = value;
          onChanged();
          return this;
        }
  
        // required uint32 ptoNum = 4;
        private int ptoNum_ ;
        /**
         * <code>required uint32 ptoNum = 4;</code>
         */
        public boolean hasPtoNum() {
          return ((bitField0_ & 0x00000008) == 0x00000008);
        }
        /**
         * <code>required uint32 ptoNum = 4;</code>
         */
        public int getPtoNum() {
          return ptoNum_;
        }
        /**
         * <code>required uint32 ptoNum = 4;</code>
         */
        public Builder setPtoNum(int value) {
          bitField0_ |= 0x00000008;
          ptoNum_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>required uint32 ptoNum = 4;</code>
         */
        public Builder clearPtoNum() {
          bitField0_ = (bitField0_ & ~0x00000008);
          ptoNum_ = 0;
          onChanged();
          return this;
        }
  
        // required bytes msg = 5;
        private com.google.protobuf.ByteString msg_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>required bytes msg = 5;</code>
         */
        public boolean hasMsg() {
          return ((bitField0_ & 0x00000010) == 0x00000010);
        }
        /**
         * <code>required bytes msg = 5;</code>
         */
        public com.google.protobuf.ByteString getMsg() {
          return msg_;
        }
        /**
         * <code>required bytes msg = 5;</code>
         */
        public Builder setMsg(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    bitField0_ |= 0x00000010;
          msg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>required bytes msg = 5;</code>
         */
        public Builder clearMsg() {
          bitField0_ = (bitField0_ & ~0x00000010);
          msg_ = getDefaultInstance().getMsg();
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:GTransfer)
      }
  
      static {
        defaultInstance = new GTransfer(true);
        defaultInstance.initFields();
      }
  
      // @@protoc_insertion_point(class_scope:GTransfer)
    }
  
    public interface GreetOrBuilder
        extends com.google.protobuf.MessageOrBuilder {
  
      // required .Greet.From from = 1;
      /**
       * <code>required .Greet.From from = 1;</code>
       */
      boolean hasFrom();
      /**
       * <code>required .Greet.From from = 1;</code>
       */
      protobuf.generate.internal.Internal.Greet.From getFrom();
    }
    /**
     * Protobuf type {@code Greet}
     *
     * <pre>
     *服务间建立连接时发送的协议
     * </pre>
     */
    public static final class Greet extends
        com.google.protobuf.GeneratedMessage
        implements GreetOrBuilder {
      // Use Greet.newBuilder() to construct.
      private Greet(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
        super(builder);
        this.unknownFields = builder.getUnknownFields();
      }
      private Greet(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
  
      private static final Greet defaultInstance;
      public static Greet getDefaultInstance() {
        return defaultInstance;
      }
  
      public Greet getDefaultInstanceForType() {
        return defaultInstance;
      }
  
      private final com.google.protobuf.UnknownFieldSet unknownFields;
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
          getUnknownFields() {
        return this.unknownFields;
      }
      private Greet(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        initFields();
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownField(input, unknownFields,
                                       extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                int rawValue = input.readEnum();
                protobuf.generate.internal.Internal.Greet.From value = protobuf.generate.internal.Internal.Greet.From.valueOf(rawValue);
                if (value == null) {
                  unknownFields.mergeVarintField(1, rawValue);
                } else {
                  bitField0_ |= 0x00000001;
                  from_ = value;
                }
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e.getMessage()).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return protobuf.generate.internal.Internal.internal_static_Greet_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return protobuf.generate.internal.Internal.internal_static_Greet_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                protobuf.generate.internal.Internal.Greet.class, protobuf.generate.internal.Internal.Greet.Builder.class);
      }
  
      public static com.google.protobuf.Parser<Greet> PARSER =
          new com.google.protobuf.AbstractParser<Greet>() {
        public Greet parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new Greet(input, extensionRegistry);
        }
      };
  
      @java.lang.Override
      public com.google.protobuf.Parser<Greet> getParserForType() {
        return PARSER;
      }
  
      /**
       * Protobuf enum {@code Greet.From}
       */
      public enum From
          implements com.google.protobuf.ProtocolMessageEnum {
        /**
         * <code>Logic = 1;</code>
         */
        Logic(0, 1),
        /**
         * <code>Gate = 2;</code>
         */
        Gate(1, 2),
        /**
         * <code>Auth = 3;</code>
         */
        Auth(2, 3),
        ;
  
        /**
         * <code>Logic = 1;</code>
         */
        public static final int Logic_VALUE = 1;
        /**
         * <code>Gate = 2;</code>
         */
        public static final int Gate_VALUE = 2;
        /**
         * <code>Auth = 3;</code>
         */
        public static final int Auth_VALUE = 3;
  
  
        public final int getNumber() { return value; }
  
        public static From valueOf(int value) {
          switch (value) {
            case 1: return Logic;
            case 2: return Gate;
            case 3: return Auth;
            default: return null;
          }
        }
  
        public static com.google.protobuf.Internal.EnumLiteMap<From>
            internalGetValueMap() {
          return internalValueMap;
        }
        private static com.google.protobuf.Internal.EnumLiteMap<From>
            internalValueMap =
              new com.google.protobuf.Internal.EnumLiteMap<From>() {
                public From findValueByNumber(int number) {
                  return From.valueOf(number);
                }
              };
  
        public final com.google.protobuf.Descriptors.EnumValueDescriptor
            getValueDescriptor() {
          return getDescriptor().getValues().get(index);
        }
        public final com.google.protobuf.Descriptors.EnumDescriptor
            getDescriptorForType() {
          return getDescriptor();
        }
        public static final com.google.protobuf.Descriptors.EnumDescriptor
            getDescriptor() {
          return protobuf.generate.internal.Internal.Greet.getDescriptor().getEnumTypes().get(0);
        }
  
        private static final From[] VALUES = values();
  
        public static From valueOf(
            com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
          if (desc.getType() != getDescriptor()) {
            throw new java.lang.IllegalArgumentException(
              "EnumValueDescriptor is not for this type.");
          }
          return VALUES[desc.getIndex()];
        }
  
        private final int index;
        private final int value;
  
        private From(int index, int value) {
          this.index = index;
          this.value = value;
        }
  
        // @@protoc_insertion_point(enum_scope:Greet.From)
      }
  
      private int bitField0_;
      // required .Greet.From from = 1;
      public static final int FROM_FIELD_NUMBER = 1;
      private protobuf.generate.internal.Internal.Greet.From from_;
      /**
       * <code>required .Greet.From from = 1;</code>
       */
      public boolean hasFrom() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * <code>required .Greet.From from = 1;</code>
       */
      public protobuf.generate.internal.Internal.Greet.From getFrom() {
        return from_;
      }
  
      private void initFields() {
        from_ = protobuf.generate.internal.Internal.Greet.From.Logic;
      }
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized != -1) return isInitialized == 1;
  
        if (!hasFrom()) {
          memoizedIsInitialized = 0;
          return false;
        }
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          output.writeEnum(1, from_.getNumber());
        }
        getUnknownFields().writeTo(output);
      }
  
      private int memoizedSerializedSize = -1;
      public int getSerializedSize() {
        int size = memoizedSerializedSize;
        if (size != -1) return size;
  
        size = 0;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          size += com.google.protobuf.CodedOutputStream
            .computeEnumSize(1, from_.getNumber());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSerializedSize = size;
        return size;
      }
  
      private static final long serialVersionUID = 0L;
      @java.lang.Override
      protected java.lang.Object writeReplace()
          throws java.io.ObjectStreamException {
        return super.writeReplace();
      }
  
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.Greet parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input);
      }
      public static protobuf.generate.internal.Internal.Greet parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseDelimitedFrom(input, extensionRegistry);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return PARSER.parseFrom(input);
      }
      public static protobuf.generate.internal.Internal.Greet parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return PARSER.parseFrom(input, extensionRegistry);
      }
  
      public static Builder newBuilder() { return Builder.create(); }
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder(protobuf.generate.internal.Internal.Greet prototype) {
        return newBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() { return newBuilder(this); }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code Greet}
       *
       * <pre>
       *服务间建立连接时发送的协议
       * </pre>
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessage.Builder<Builder>
         implements protobuf.generate.internal.Internal.GreetOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return protobuf.generate.internal.Internal.internal_static_Greet_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return protobuf.generate.internal.Internal.internal_static_Greet_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  protobuf.generate.internal.Internal.Greet.class, protobuf.generate.internal.Internal.Greet.Builder.class);
        }
  
        // Construct using protobuf.generate.internal.Internal.Greet.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessage.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          }
        }
        private static Builder create() {
          return new Builder();
        }
  
        public Builder clear() {
          super.clear();
          from_ = protobuf.generate.internal.Internal.Greet.From.Logic;
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public Builder clone() {
          return create().mergeFrom(buildPartial());
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return protobuf.generate.internal.Internal.internal_static_Greet_descriptor;
        }
  
        public protobuf.generate.internal.Internal.Greet getDefaultInstanceForType() {
          return protobuf.generate.internal.Internal.Greet.getDefaultInstance();
        }
  
        public protobuf.generate.internal.Internal.Greet build() {
          protobuf.generate.internal.Internal.Greet result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public protobuf.generate.internal.Internal.Greet buildPartial() {
          protobuf.generate.internal.Internal.Greet result = new protobuf.generate.internal.Internal.Greet(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
            to_bitField0_ |= 0x00000001;
          }
          result.from_ = from_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof protobuf.generate.internal.Internal.Greet) {
            return mergeFrom((protobuf.generate.internal.Internal.Greet)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(protobuf.generate.internal.Internal.Greet other) {
          if (other == protobuf.generate.internal.Internal.Greet.getDefaultInstance()) return this;
          if (other.hasFrom()) {
            setFrom(other.getFrom());
          }
          this.mergeUnknownFields(other.getUnknownFields());
          return this;
        }
  
        public final boolean isInitialized() {
          if (!hasFrom()) {
            
            return false;
          }
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          protobuf.generate.internal.Internal.Greet parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (protobuf.generate.internal.Internal.Greet) e.getUnfinishedMessage();
            throw e;
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        // required .Greet.From from = 1;
        private protobuf.generate.internal.Internal.Greet.From from_ = protobuf.generate.internal.Internal.Greet.From.Logic;
        /**
         * <code>required .Greet.From from = 1;</code>
         */
        public boolean hasFrom() {
          return ((bitField0_ & 0x00000001) == 0x00000001);
        }
        /**
         * <code>required .Greet.From from = 1;</code>
         */
        public protobuf.generate.internal.Internal.Greet.From getFrom() {
          return from_;
        }
        /**
         * <code>required .Greet.From from = 1;</code>
         */
        public Builder setFrom(protobuf.generate.internal.Internal.Greet.From value) {
          if (value == null) {
            throw new NullPointerException();
          }
          bitField0_ |= 0x00000001;
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>required .Greet.From from = 1;</code>
         */
        public Builder clearFrom() {
          bitField0_ = (bitField0_ & ~0x00000001);
          from_ = protobuf.generate.internal.Internal.Greet.From.Logic;
          onChanged();
          return this;
        }
  
        // @@protoc_insertion_point(builder_scope:Greet)
      }
  
      static {
        defaultInstance = new Greet(true);
        defaultInstance.initFields();
      }
  
      // @@protoc_insertion_point(class_scope:Greet)
    }
  
    private static com.google.protobuf.Descriptors.Descriptor
      internal_static_GTransfer_descriptor;
    private static
      com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_GTransfer_fieldAccessorTable;
    private static com.google.protobuf.Descriptors.Descriptor
      internal_static_Greet_descriptor;
    private static
      com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internal_static_Greet_fieldAccessorTable;
  
    public static com.google.protobuf.Descriptors.FileDescriptor
        getDescriptor() {
      return descriptor;
    }
    private static com.google.protobuf.Descriptors.FileDescriptor
        descriptor;
    static {
      java.lang.String[] descriptorData = {
        "\n\033internal_def/internal.proto\"\\\n\tGTransf" +
        "er\022\023\n\004dest\030\001 \002(\0162\005.Dest\022\r\n\005netId\030\002 \001(\004\022\016" +
        "\n\006userId\030\003 \002(\t\022\016\n\006ptoNum\030\004 \002(\r\022\013\n\003msg\030\005 " +
        "\002(\014\"I\n\005Greet\022\031\n\004from\030\001 \002(\0162\013.Greet.From\"" +
        "%\n\004From\022\t\n\005Logic\020\001\022\010\n\004Gate\020\002\022\010\n\004Auth\020\003*1" +
        "\n\004Dest\022\n\n\006Client\020\001\022\010\n\004Auth\020\002\022\t\n\005Logic\020\003\022" +
        "\010\n\004Gate\020\004B&\n\032protobuf.generate.internalB" +
        "\010Internal"
      };
      com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
        new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
          public com.google.protobuf.ExtensionRegistry assignDescriptors(
              com.google.protobuf.Descriptors.FileDescriptor root) {
            descriptor = root;
            internal_static_GTransfer_descriptor =
              getDescriptor().getMessageTypes().get(0);
            internal_static_GTransfer_fieldAccessorTable = new
              com.google.protobuf.GeneratedMessage.FieldAccessorTable(
                internal_static_GTransfer_descriptor,
                new java.lang.String[] { "Dest", "NetId", "UserId", "PtoNum", "Msg", });
            internal_static_Greet_descriptor =
              getDescriptor().getMessageTypes().get(1);
            internal_static_Greet_fieldAccessorTable = new
              com.google.protobuf.GeneratedMessage.FieldAccessorTable(
                internal_static_Greet_descriptor,
                new java.lang.String[] { "From", });
            return null;
          }
        };
      com.google.protobuf.Descriptors.FileDescriptor
        .internalBuildGeneratedFileFrom(descriptorData,
          new com.google.protobuf.Descriptors.FileDescriptor[] {
          }, assigner);
    }
  
    // @@protoc_insertion_point(outer_class_scope)
  }
  