All Downloads are FREE. Search and download functionalities are using the official Maven repository.

wechat.protobuf.CDNUploadMsgImgPrepareRequest Maven / Gradle / Ivy

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: wechat.proto

package wechat.protobuf;

/**
 * Protobuf type {@code wechat_proto.CDNUploadMsgImgPrepareRequest}
 */
public final class CDNUploadMsgImgPrepareRequest extends
    com.google.protobuf.GeneratedMessageV3 implements
    // @@protoc_insertion_point(message_implements:wechat_proto.CDNUploadMsgImgPrepareRequest)
    CDNUploadMsgImgPrepareRequestOrBuilder {
private static final long serialVersionUID = 0L;
  // Use CDNUploadMsgImgPrepareRequest.newBuilder() to construct.
  private CDNUploadMsgImgPrepareRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) {
    super(builder);
  }
  private CDNUploadMsgImgPrepareRequest() {
    clientImgId_ = "";
    fromUserName_ = "";
    toUserName_ = "";
    msgSource_ = "";
    attachedContent_ = "";
    aeskey_ = "";
    appid_ = "";
    messageAction_ = "";
    meesageExt_ = "";
    mediaTagName_ = "";
    sendMsgTicket_ = "";
  }

  @java.lang.Override
  @SuppressWarnings({"unused"})
  protected java.lang.Object newInstance(
      UnusedPrivateParameter unused) {
    return new CDNUploadMsgImgPrepareRequest();
  }

  @java.lang.Override
  public final com.google.protobuf.UnknownFieldSet
  getUnknownFields() {
    return this.unknownFields;
  }
  private CDNUploadMsgImgPrepareRequest(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    this();
    if (extensionRegistry == null) {
      throw new java.lang.NullPointerException();
    }
    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;
          case 10: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00000001;
            clientImgId_ = bs;
            break;
          }
          case 18: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00000002;
            fromUserName_ = bs;
            break;
          }
          case 26: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00000004;
            toUserName_ = bs;
            break;
          }
          case 32: {
            bitField0_ |= 0x00000008;
            thumbHeight_ = input.readInt32();
            break;
          }
          case 40: {
            bitField0_ |= 0x00000010;
            thumbWidth_ = input.readInt32();
            break;
          }
          case 50: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00000020;
            msgSource_ = bs;
            break;
          }
          case 58: {
            wechat.protobuf.SKBuiltinString_.Builder subBuilder = null;
            if (((bitField0_ & 0x00000040) != 0)) {
              subBuilder = clientStat_.toBuilder();
            }
            clientStat_ = input.readMessage(wechat.protobuf.SKBuiltinString_.PARSER, extensionRegistry);
            if (subBuilder != null) {
              subBuilder.mergeFrom(clientStat_);
              clientStat_ = subBuilder.buildPartial();
            }
            bitField0_ |= 0x00000040;
            break;
          }
          case 64: {
            bitField0_ |= 0x00000080;
            scene_ = input.readInt32();
            break;
          }
          case 77: {
            bitField0_ |= 0x00000100;
            longitude_ = input.readFloat();
            break;
          }
          case 85: {
            bitField0_ |= 0x00000200;
            latitude_ = input.readFloat();
            break;
          }
          case 90: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00000400;
            attachedContent_ = bs;
            break;
          }
          case 96: {
            bitField0_ |= 0x00000800;
            midHeight_ = input.readInt32();
            break;
          }
          case 104: {
            bitField0_ |= 0x00001000;
            midWidth_ = input.readInt32();
            break;
          }
          case 112: {
            bitField0_ |= 0x00002000;
            hDHeight_ = input.readInt32();
            break;
          }
          case 120: {
            bitField0_ |= 0x00004000;
            hDWidth_ = input.readInt32();
            break;
          }
          case 130: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00008000;
            aeskey_ = bs;
            break;
          }
          case 136: {
            bitField0_ |= 0x00010000;
            encryVer_ = input.readInt32();
            break;
          }
          case 144: {
            bitField0_ |= 0x00020000;
            crc32_ = input.readUInt32();
            break;
          }
          case 152: {
            bitField0_ |= 0x00040000;
            msgForwardType_ = input.readUInt32();
            break;
          }
          case 160: {
            bitField0_ |= 0x00080000;
            source_ = input.readUInt32();
            break;
          }
          case 170: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00100000;
            appid_ = bs;
            break;
          }
          case 178: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00200000;
            messageAction_ = bs;
            break;
          }
          case 186: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00400000;
            meesageExt_ = bs;
            break;
          }
          case 194: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x00800000;
            mediaTagName_ = bs;
            break;
          }
          case 202: {
            com.google.protobuf.ByteString bs = input.readBytes();
            bitField0_ |= 0x01000000;
            sendMsgTicket_ = bs;
            break;
          }
          default: {
            if (!parseUnknownField(
                input, unknownFields, extensionRegistry, tag)) {
              done = true;
            }
            break;
          }
        }
      }
    } catch (com.google.protobuf.InvalidProtocolBufferException e) {
      throw e.setUnfinishedMessage(this);
    } catch (java.io.IOException e) {
      throw new com.google.protobuf.InvalidProtocolBufferException(
          e).setUnfinishedMessage(this);
    } finally {
      this.unknownFields = unknownFields.build();
      makeExtensionsImmutable();
    }
  }
  public static final com.google.protobuf.Descriptors.Descriptor
      getDescriptor() {
    return wechat.protobuf.Wechat.internal_static_wechat_proto_CDNUploadMsgImgPrepareRequest_descriptor;
  }

  @java.lang.Override
  protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internalGetFieldAccessorTable() {
    return wechat.protobuf.Wechat.internal_static_wechat_proto_CDNUploadMsgImgPrepareRequest_fieldAccessorTable
        .ensureFieldAccessorsInitialized(
            wechat.protobuf.CDNUploadMsgImgPrepareRequest.class, wechat.protobuf.CDNUploadMsgImgPrepareRequest.Builder.class);
  }

  private int bitField0_;
  public static final int CLIENTIMGID_FIELD_NUMBER = 1;
  private volatile java.lang.Object clientImgId_;
  /**
   * optional string clientImgId = 1;
   * @return Whether the clientImgId field is set.
   */
  @java.lang.Override
  public boolean hasClientImgId() {
    return ((bitField0_ & 0x00000001) != 0);
  }
  /**
   * optional string clientImgId = 1;
   * @return The clientImgId.
   */
  @java.lang.Override
  public java.lang.String getClientImgId() {
    java.lang.Object ref = clientImgId_;
    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()) {
        clientImgId_ = s;
      }
      return s;
    }
  }
  /**
   * optional string clientImgId = 1;
   * @return The bytes for clientImgId.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getClientImgIdBytes() {
    java.lang.Object ref = clientImgId_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      clientImgId_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int FROMUSERNAME_FIELD_NUMBER = 2;
  private volatile java.lang.Object fromUserName_;
  /**
   * optional string fromUserName = 2;
   * @return Whether the fromUserName field is set.
   */
  @java.lang.Override
  public boolean hasFromUserName() {
    return ((bitField0_ & 0x00000002) != 0);
  }
  /**
   * optional string fromUserName = 2;
   * @return The fromUserName.
   */
  @java.lang.Override
  public java.lang.String getFromUserName() {
    java.lang.Object ref = fromUserName_;
    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()) {
        fromUserName_ = s;
      }
      return s;
    }
  }
  /**
   * optional string fromUserName = 2;
   * @return The bytes for fromUserName.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getFromUserNameBytes() {
    java.lang.Object ref = fromUserName_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      fromUserName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int TOUSERNAME_FIELD_NUMBER = 3;
  private volatile java.lang.Object toUserName_;
  /**
   * optional string toUserName = 3;
   * @return Whether the toUserName field is set.
   */
  @java.lang.Override
  public boolean hasToUserName() {
    return ((bitField0_ & 0x00000004) != 0);
  }
  /**
   * optional string toUserName = 3;
   * @return The toUserName.
   */
  @java.lang.Override
  public java.lang.String getToUserName() {
    java.lang.Object ref = toUserName_;
    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()) {
        toUserName_ = s;
      }
      return s;
    }
  }
  /**
   * optional string toUserName = 3;
   * @return The bytes for toUserName.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getToUserNameBytes() {
    java.lang.Object ref = toUserName_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      toUserName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int THUMBHEIGHT_FIELD_NUMBER = 4;
  private int thumbHeight_;
  /**
   * optional int32 thumbHeight = 4;
   * @return Whether the thumbHeight field is set.
   */
  @java.lang.Override
  public boolean hasThumbHeight() {
    return ((bitField0_ & 0x00000008) != 0);
  }
  /**
   * optional int32 thumbHeight = 4;
   * @return The thumbHeight.
   */
  @java.lang.Override
  public int getThumbHeight() {
    return thumbHeight_;
  }

  public static final int THUMBWIDTH_FIELD_NUMBER = 5;
  private int thumbWidth_;
  /**
   * optional int32 thumbWidth = 5;
   * @return Whether the thumbWidth field is set.
   */
  @java.lang.Override
  public boolean hasThumbWidth() {
    return ((bitField0_ & 0x00000010) != 0);
  }
  /**
   * optional int32 thumbWidth = 5;
   * @return The thumbWidth.
   */
  @java.lang.Override
  public int getThumbWidth() {
    return thumbWidth_;
  }

  public static final int MSGSOURCE_FIELD_NUMBER = 6;
  private volatile java.lang.Object msgSource_;
  /**
   * optional string msgSource = 6;
   * @return Whether the msgSource field is set.
   */
  @java.lang.Override
  public boolean hasMsgSource() {
    return ((bitField0_ & 0x00000020) != 0);
  }
  /**
   * optional string msgSource = 6;
   * @return The msgSource.
   */
  @java.lang.Override
  public java.lang.String getMsgSource() {
    java.lang.Object ref = msgSource_;
    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()) {
        msgSource_ = s;
      }
      return s;
    }
  }
  /**
   * optional string msgSource = 6;
   * @return The bytes for msgSource.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMsgSourceBytes() {
    java.lang.Object ref = msgSource_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      msgSource_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int CLIENTSTAT_FIELD_NUMBER = 7;
  private wechat.protobuf.SKBuiltinString_ clientStat_;
  /**
   * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
   * @return Whether the clientStat field is set.
   */
  @java.lang.Override
  public boolean hasClientStat() {
    return ((bitField0_ & 0x00000040) != 0);
  }
  /**
   * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
   * @return The clientStat.
   */
  @java.lang.Override
  public wechat.protobuf.SKBuiltinString_ getClientStat() {
    return clientStat_ == null ? wechat.protobuf.SKBuiltinString_.getDefaultInstance() : clientStat_;
  }
  /**
   * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
   */
  @java.lang.Override
  public wechat.protobuf.SKBuiltinString_OrBuilder getClientStatOrBuilder() {
    return clientStat_ == null ? wechat.protobuf.SKBuiltinString_.getDefaultInstance() : clientStat_;
  }

  public static final int SCENE_FIELD_NUMBER = 8;
  private int scene_;
  /**
   * optional int32 scene = 8;
   * @return Whether the scene field is set.
   */
  @java.lang.Override
  public boolean hasScene() {
    return ((bitField0_ & 0x00000080) != 0);
  }
  /**
   * optional int32 scene = 8;
   * @return The scene.
   */
  @java.lang.Override
  public int getScene() {
    return scene_;
  }

  public static final int LONGITUDE_FIELD_NUMBER = 9;
  private float longitude_;
  /**
   * optional float longitude = 9;
   * @return Whether the longitude field is set.
   */
  @java.lang.Override
  public boolean hasLongitude() {
    return ((bitField0_ & 0x00000100) != 0);
  }
  /**
   * optional float longitude = 9;
   * @return The longitude.
   */
  @java.lang.Override
  public float getLongitude() {
    return longitude_;
  }

  public static final int LATITUDE_FIELD_NUMBER = 10;
  private float latitude_;
  /**
   * optional float latitude = 10;
   * @return Whether the latitude field is set.
   */
  @java.lang.Override
  public boolean hasLatitude() {
    return ((bitField0_ & 0x00000200) != 0);
  }
  /**
   * optional float latitude = 10;
   * @return The latitude.
   */
  @java.lang.Override
  public float getLatitude() {
    return latitude_;
  }

  public static final int ATTACHEDCONTENT_FIELD_NUMBER = 11;
  private volatile java.lang.Object attachedContent_;
  /**
   * optional string attachedContent = 11;
   * @return Whether the attachedContent field is set.
   */
  @java.lang.Override
  public boolean hasAttachedContent() {
    return ((bitField0_ & 0x00000400) != 0);
  }
  /**
   * optional string attachedContent = 11;
   * @return The attachedContent.
   */
  @java.lang.Override
  public java.lang.String getAttachedContent() {
    java.lang.Object ref = attachedContent_;
    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()) {
        attachedContent_ = s;
      }
      return s;
    }
  }
  /**
   * optional string attachedContent = 11;
   * @return The bytes for attachedContent.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getAttachedContentBytes() {
    java.lang.Object ref = attachedContent_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      attachedContent_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int MIDHEIGHT_FIELD_NUMBER = 12;
  private int midHeight_;
  /**
   * optional int32 MidHeight = 12;
   * @return Whether the midHeight field is set.
   */
  @java.lang.Override
  public boolean hasMidHeight() {
    return ((bitField0_ & 0x00000800) != 0);
  }
  /**
   * optional int32 MidHeight = 12;
   * @return The midHeight.
   */
  @java.lang.Override
  public int getMidHeight() {
    return midHeight_;
  }

  public static final int MIDWIDTH_FIELD_NUMBER = 13;
  private int midWidth_;
  /**
   * optional int32 MidWidth = 13;
   * @return Whether the midWidth field is set.
   */
  @java.lang.Override
  public boolean hasMidWidth() {
    return ((bitField0_ & 0x00001000) != 0);
  }
  /**
   * optional int32 MidWidth = 13;
   * @return The midWidth.
   */
  @java.lang.Override
  public int getMidWidth() {
    return midWidth_;
  }

  public static final int HDHEIGHT_FIELD_NUMBER = 14;
  private int hDHeight_;
  /**
   * optional int32 HDHeight = 14;
   * @return Whether the hDHeight field is set.
   */
  @java.lang.Override
  public boolean hasHDHeight() {
    return ((bitField0_ & 0x00002000) != 0);
  }
  /**
   * optional int32 HDHeight = 14;
   * @return The hDHeight.
   */
  @java.lang.Override
  public int getHDHeight() {
    return hDHeight_;
  }

  public static final int HDWIDTH_FIELD_NUMBER = 15;
  private int hDWidth_;
  /**
   * optional int32 HDWidth = 15;
   * @return Whether the hDWidth field is set.
   */
  @java.lang.Override
  public boolean hasHDWidth() {
    return ((bitField0_ & 0x00004000) != 0);
  }
  /**
   * optional int32 HDWidth = 15;
   * @return The hDWidth.
   */
  @java.lang.Override
  public int getHDWidth() {
    return hDWidth_;
  }

  public static final int AESKEY_FIELD_NUMBER = 16;
  private volatile java.lang.Object aeskey_;
  /**
   * optional string aeskey = 16;
   * @return Whether the aeskey field is set.
   */
  @java.lang.Override
  public boolean hasAeskey() {
    return ((bitField0_ & 0x00008000) != 0);
  }
  /**
   * optional string aeskey = 16;
   * @return The aeskey.
   */
  @java.lang.Override
  public java.lang.String getAeskey() {
    java.lang.Object ref = aeskey_;
    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()) {
        aeskey_ = s;
      }
      return s;
    }
  }
  /**
   * optional string aeskey = 16;
   * @return The bytes for aeskey.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getAeskeyBytes() {
    java.lang.Object ref = aeskey_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      aeskey_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int ENCRYVER_FIELD_NUMBER = 17;
  private int encryVer_;
  /**
   * optional int32 encryVer = 17;
   * @return Whether the encryVer field is set.
   */
  @java.lang.Override
  public boolean hasEncryVer() {
    return ((bitField0_ & 0x00010000) != 0);
  }
  /**
   * optional int32 encryVer = 17;
   * @return The encryVer.
   */
  @java.lang.Override
  public int getEncryVer() {
    return encryVer_;
  }

  public static final int CRC32_FIELD_NUMBER = 18;
  private int crc32_;
  /**
   * optional uint32 crc32 = 18;
   * @return Whether the crc32 field is set.
   */
  @java.lang.Override
  public boolean hasCrc32() {
    return ((bitField0_ & 0x00020000) != 0);
  }
  /**
   * optional uint32 crc32 = 18;
   * @return The crc32.
   */
  @java.lang.Override
  public int getCrc32() {
    return crc32_;
  }

  public static final int MSGFORWARDTYPE_FIELD_NUMBER = 19;
  private int msgForwardType_;
  /**
   * optional uint32 msgForwardType = 19;
   * @return Whether the msgForwardType field is set.
   */
  @java.lang.Override
  public boolean hasMsgForwardType() {
    return ((bitField0_ & 0x00040000) != 0);
  }
  /**
   * optional uint32 msgForwardType = 19;
   * @return The msgForwardType.
   */
  @java.lang.Override
  public int getMsgForwardType() {
    return msgForwardType_;
  }

  public static final int SOURCE_FIELD_NUMBER = 20;
  private int source_;
  /**
   * optional uint32 source = 20;
   * @return Whether the source field is set.
   */
  @java.lang.Override
  public boolean hasSource() {
    return ((bitField0_ & 0x00080000) != 0);
  }
  /**
   * optional uint32 source = 20;
   * @return The source.
   */
  @java.lang.Override
  public int getSource() {
    return source_;
  }

  public static final int APPID_FIELD_NUMBER = 21;
  private volatile java.lang.Object appid_;
  /**
   * optional string appid = 21;
   * @return Whether the appid field is set.
   */
  @java.lang.Override
  public boolean hasAppid() {
    return ((bitField0_ & 0x00100000) != 0);
  }
  /**
   * optional string appid = 21;
   * @return The appid.
   */
  @java.lang.Override
  public java.lang.String getAppid() {
    java.lang.Object ref = appid_;
    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()) {
        appid_ = s;
      }
      return s;
    }
  }
  /**
   * optional string appid = 21;
   * @return The bytes for appid.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getAppidBytes() {
    java.lang.Object ref = appid_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      appid_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int MESSAGEACTION_FIELD_NUMBER = 22;
  private volatile java.lang.Object messageAction_;
  /**
   * optional string messageAction = 22;
   * @return Whether the messageAction field is set.
   */
  @java.lang.Override
  public boolean hasMessageAction() {
    return ((bitField0_ & 0x00200000) != 0);
  }
  /**
   * optional string messageAction = 22;
   * @return The messageAction.
   */
  @java.lang.Override
  public java.lang.String getMessageAction() {
    java.lang.Object ref = messageAction_;
    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()) {
        messageAction_ = s;
      }
      return s;
    }
  }
  /**
   * optional string messageAction = 22;
   * @return The bytes for messageAction.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMessageActionBytes() {
    java.lang.Object ref = messageAction_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      messageAction_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int MEESAGEEXT_FIELD_NUMBER = 23;
  private volatile java.lang.Object meesageExt_;
  /**
   * optional string meesageExt = 23;
   * @return Whether the meesageExt field is set.
   */
  @java.lang.Override
  public boolean hasMeesageExt() {
    return ((bitField0_ & 0x00400000) != 0);
  }
  /**
   * optional string meesageExt = 23;
   * @return The meesageExt.
   */
  @java.lang.Override
  public java.lang.String getMeesageExt() {
    java.lang.Object ref = meesageExt_;
    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()) {
        meesageExt_ = s;
      }
      return s;
    }
  }
  /**
   * optional string meesageExt = 23;
   * @return The bytes for meesageExt.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMeesageExtBytes() {
    java.lang.Object ref = meesageExt_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      meesageExt_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int MEDIATAGNAME_FIELD_NUMBER = 24;
  private volatile java.lang.Object mediaTagName_;
  /**
   * optional string mediaTagName = 24;
   * @return Whether the mediaTagName field is set.
   */
  @java.lang.Override
  public boolean hasMediaTagName() {
    return ((bitField0_ & 0x00800000) != 0);
  }
  /**
   * optional string mediaTagName = 24;
   * @return The mediaTagName.
   */
  @java.lang.Override
  public java.lang.String getMediaTagName() {
    java.lang.Object ref = mediaTagName_;
    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()) {
        mediaTagName_ = s;
      }
      return s;
    }
  }
  /**
   * optional string mediaTagName = 24;
   * @return The bytes for mediaTagName.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getMediaTagNameBytes() {
    java.lang.Object ref = mediaTagName_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      mediaTagName_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  public static final int SENDMSGTICKET_FIELD_NUMBER = 25;
  private volatile java.lang.Object sendMsgTicket_;
  /**
   * optional string SendMsgTicket = 25;
   * @return Whether the sendMsgTicket field is set.
   */
  @java.lang.Override
  public boolean hasSendMsgTicket() {
    return ((bitField0_ & 0x01000000) != 0);
  }
  /**
   * optional string SendMsgTicket = 25;
   * @return The sendMsgTicket.
   */
  @java.lang.Override
  public java.lang.String getSendMsgTicket() {
    java.lang.Object ref = sendMsgTicket_;
    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()) {
        sendMsgTicket_ = s;
      }
      return s;
    }
  }
  /**
   * optional string SendMsgTicket = 25;
   * @return The bytes for sendMsgTicket.
   */
  @java.lang.Override
  public com.google.protobuf.ByteString
      getSendMsgTicketBytes() {
    java.lang.Object ref = sendMsgTicket_;
    if (ref instanceof java.lang.String) {
      com.google.protobuf.ByteString b = 
          com.google.protobuf.ByteString.copyFromUtf8(
              (java.lang.String) ref);
      sendMsgTicket_ = b;
      return b;
    } else {
      return (com.google.protobuf.ByteString) ref;
    }
  }

  private byte memoizedIsInitialized = -1;
  @java.lang.Override
  public final boolean isInitialized() {
    byte isInitialized = memoizedIsInitialized;
    if (isInitialized == 1) return true;
    if (isInitialized == 0) return false;

    memoizedIsInitialized = 1;
    return true;
  }

  @java.lang.Override
  public void writeTo(com.google.protobuf.CodedOutputStream output)
                      throws java.io.IOException {
    if (((bitField0_ & 0x00000001) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 1, clientImgId_);
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fromUserName_);
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 3, toUserName_);
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      output.writeInt32(4, thumbHeight_);
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      output.writeInt32(5, thumbWidth_);
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 6, msgSource_);
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      output.writeMessage(7, getClientStat());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      output.writeInt32(8, scene_);
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      output.writeFloat(9, longitude_);
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      output.writeFloat(10, latitude_);
    }
    if (((bitField0_ & 0x00000400) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 11, attachedContent_);
    }
    if (((bitField0_ & 0x00000800) != 0)) {
      output.writeInt32(12, midHeight_);
    }
    if (((bitField0_ & 0x00001000) != 0)) {
      output.writeInt32(13, midWidth_);
    }
    if (((bitField0_ & 0x00002000) != 0)) {
      output.writeInt32(14, hDHeight_);
    }
    if (((bitField0_ & 0x00004000) != 0)) {
      output.writeInt32(15, hDWidth_);
    }
    if (((bitField0_ & 0x00008000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 16, aeskey_);
    }
    if (((bitField0_ & 0x00010000) != 0)) {
      output.writeInt32(17, encryVer_);
    }
    if (((bitField0_ & 0x00020000) != 0)) {
      output.writeUInt32(18, crc32_);
    }
    if (((bitField0_ & 0x00040000) != 0)) {
      output.writeUInt32(19, msgForwardType_);
    }
    if (((bitField0_ & 0x00080000) != 0)) {
      output.writeUInt32(20, source_);
    }
    if (((bitField0_ & 0x00100000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 21, appid_);
    }
    if (((bitField0_ & 0x00200000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 22, messageAction_);
    }
    if (((bitField0_ & 0x00400000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 23, meesageExt_);
    }
    if (((bitField0_ & 0x00800000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 24, mediaTagName_);
    }
    if (((bitField0_ & 0x01000000) != 0)) {
      com.google.protobuf.GeneratedMessageV3.writeString(output, 25, sendMsgTicket_);
    }
    unknownFields.writeTo(output);
  }

  @java.lang.Override
  public int getSerializedSize() {
    int size = memoizedSize;
    if (size != -1) return size;

    size = 0;
    if (((bitField0_ & 0x00000001) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, clientImgId_);
    }
    if (((bitField0_ & 0x00000002) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, fromUserName_);
    }
    if (((bitField0_ & 0x00000004) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, toUserName_);
    }
    if (((bitField0_ & 0x00000008) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(4, thumbHeight_);
    }
    if (((bitField0_ & 0x00000010) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(5, thumbWidth_);
    }
    if (((bitField0_ & 0x00000020) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, msgSource_);
    }
    if (((bitField0_ & 0x00000040) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeMessageSize(7, getClientStat());
    }
    if (((bitField0_ & 0x00000080) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(8, scene_);
    }
    if (((bitField0_ & 0x00000100) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(9, longitude_);
    }
    if (((bitField0_ & 0x00000200) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeFloatSize(10, latitude_);
    }
    if (((bitField0_ & 0x00000400) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(11, attachedContent_);
    }
    if (((bitField0_ & 0x00000800) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(12, midHeight_);
    }
    if (((bitField0_ & 0x00001000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(13, midWidth_);
    }
    if (((bitField0_ & 0x00002000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(14, hDHeight_);
    }
    if (((bitField0_ & 0x00004000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(15, hDWidth_);
    }
    if (((bitField0_ & 0x00008000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, aeskey_);
    }
    if (((bitField0_ & 0x00010000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeInt32Size(17, encryVer_);
    }
    if (((bitField0_ & 0x00020000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(18, crc32_);
    }
    if (((bitField0_ & 0x00040000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(19, msgForwardType_);
    }
    if (((bitField0_ & 0x00080000) != 0)) {
      size += com.google.protobuf.CodedOutputStream
        .computeUInt32Size(20, source_);
    }
    if (((bitField0_ & 0x00100000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(21, appid_);
    }
    if (((bitField0_ & 0x00200000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(22, messageAction_);
    }
    if (((bitField0_ & 0x00400000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(23, meesageExt_);
    }
    if (((bitField0_ & 0x00800000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(24, mediaTagName_);
    }
    if (((bitField0_ & 0x01000000) != 0)) {
      size += com.google.protobuf.GeneratedMessageV3.computeStringSize(25, sendMsgTicket_);
    }
    size += unknownFields.getSerializedSize();
    memoizedSize = size;
    return size;
  }

  @java.lang.Override
  public boolean equals(final java.lang.Object obj) {
    if (obj == this) {
     return true;
    }
    if (!(obj instanceof wechat.protobuf.CDNUploadMsgImgPrepareRequest)) {
      return super.equals(obj);
    }
    wechat.protobuf.CDNUploadMsgImgPrepareRequest other = (wechat.protobuf.CDNUploadMsgImgPrepareRequest) obj;

    if (hasClientImgId() != other.hasClientImgId()) return false;
    if (hasClientImgId()) {
      if (!getClientImgId()
          .equals(other.getClientImgId())) return false;
    }
    if (hasFromUserName() != other.hasFromUserName()) return false;
    if (hasFromUserName()) {
      if (!getFromUserName()
          .equals(other.getFromUserName())) return false;
    }
    if (hasToUserName() != other.hasToUserName()) return false;
    if (hasToUserName()) {
      if (!getToUserName()
          .equals(other.getToUserName())) return false;
    }
    if (hasThumbHeight() != other.hasThumbHeight()) return false;
    if (hasThumbHeight()) {
      if (getThumbHeight()
          != other.getThumbHeight()) return false;
    }
    if (hasThumbWidth() != other.hasThumbWidth()) return false;
    if (hasThumbWidth()) {
      if (getThumbWidth()
          != other.getThumbWidth()) return false;
    }
    if (hasMsgSource() != other.hasMsgSource()) return false;
    if (hasMsgSource()) {
      if (!getMsgSource()
          .equals(other.getMsgSource())) return false;
    }
    if (hasClientStat() != other.hasClientStat()) return false;
    if (hasClientStat()) {
      if (!getClientStat()
          .equals(other.getClientStat())) return false;
    }
    if (hasScene() != other.hasScene()) return false;
    if (hasScene()) {
      if (getScene()
          != other.getScene()) return false;
    }
    if (hasLongitude() != other.hasLongitude()) return false;
    if (hasLongitude()) {
      if (java.lang.Float.floatToIntBits(getLongitude())
          != java.lang.Float.floatToIntBits(
              other.getLongitude())) return false;
    }
    if (hasLatitude() != other.hasLatitude()) return false;
    if (hasLatitude()) {
      if (java.lang.Float.floatToIntBits(getLatitude())
          != java.lang.Float.floatToIntBits(
              other.getLatitude())) return false;
    }
    if (hasAttachedContent() != other.hasAttachedContent()) return false;
    if (hasAttachedContent()) {
      if (!getAttachedContent()
          .equals(other.getAttachedContent())) return false;
    }
    if (hasMidHeight() != other.hasMidHeight()) return false;
    if (hasMidHeight()) {
      if (getMidHeight()
          != other.getMidHeight()) return false;
    }
    if (hasMidWidth() != other.hasMidWidth()) return false;
    if (hasMidWidth()) {
      if (getMidWidth()
          != other.getMidWidth()) return false;
    }
    if (hasHDHeight() != other.hasHDHeight()) return false;
    if (hasHDHeight()) {
      if (getHDHeight()
          != other.getHDHeight()) return false;
    }
    if (hasHDWidth() != other.hasHDWidth()) return false;
    if (hasHDWidth()) {
      if (getHDWidth()
          != other.getHDWidth()) return false;
    }
    if (hasAeskey() != other.hasAeskey()) return false;
    if (hasAeskey()) {
      if (!getAeskey()
          .equals(other.getAeskey())) return false;
    }
    if (hasEncryVer() != other.hasEncryVer()) return false;
    if (hasEncryVer()) {
      if (getEncryVer()
          != other.getEncryVer()) return false;
    }
    if (hasCrc32() != other.hasCrc32()) return false;
    if (hasCrc32()) {
      if (getCrc32()
          != other.getCrc32()) return false;
    }
    if (hasMsgForwardType() != other.hasMsgForwardType()) return false;
    if (hasMsgForwardType()) {
      if (getMsgForwardType()
          != other.getMsgForwardType()) return false;
    }
    if (hasSource() != other.hasSource()) return false;
    if (hasSource()) {
      if (getSource()
          != other.getSource()) return false;
    }
    if (hasAppid() != other.hasAppid()) return false;
    if (hasAppid()) {
      if (!getAppid()
          .equals(other.getAppid())) return false;
    }
    if (hasMessageAction() != other.hasMessageAction()) return false;
    if (hasMessageAction()) {
      if (!getMessageAction()
          .equals(other.getMessageAction())) return false;
    }
    if (hasMeesageExt() != other.hasMeesageExt()) return false;
    if (hasMeesageExt()) {
      if (!getMeesageExt()
          .equals(other.getMeesageExt())) return false;
    }
    if (hasMediaTagName() != other.hasMediaTagName()) return false;
    if (hasMediaTagName()) {
      if (!getMediaTagName()
          .equals(other.getMediaTagName())) return false;
    }
    if (hasSendMsgTicket() != other.hasSendMsgTicket()) return false;
    if (hasSendMsgTicket()) {
      if (!getSendMsgTicket()
          .equals(other.getSendMsgTicket())) return false;
    }
    if (!unknownFields.equals(other.unknownFields)) return false;
    return true;
  }

  @java.lang.Override
  public int hashCode() {
    if (memoizedHashCode != 0) {
      return memoizedHashCode;
    }
    int hash = 41;
    hash = (19 * hash) + getDescriptor().hashCode();
    if (hasClientImgId()) {
      hash = (37 * hash) + CLIENTIMGID_FIELD_NUMBER;
      hash = (53 * hash) + getClientImgId().hashCode();
    }
    if (hasFromUserName()) {
      hash = (37 * hash) + FROMUSERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getFromUserName().hashCode();
    }
    if (hasToUserName()) {
      hash = (37 * hash) + TOUSERNAME_FIELD_NUMBER;
      hash = (53 * hash) + getToUserName().hashCode();
    }
    if (hasThumbHeight()) {
      hash = (37 * hash) + THUMBHEIGHT_FIELD_NUMBER;
      hash = (53 * hash) + getThumbHeight();
    }
    if (hasThumbWidth()) {
      hash = (37 * hash) + THUMBWIDTH_FIELD_NUMBER;
      hash = (53 * hash) + getThumbWidth();
    }
    if (hasMsgSource()) {
      hash = (37 * hash) + MSGSOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getMsgSource().hashCode();
    }
    if (hasClientStat()) {
      hash = (37 * hash) + CLIENTSTAT_FIELD_NUMBER;
      hash = (53 * hash) + getClientStat().hashCode();
    }
    if (hasScene()) {
      hash = (37 * hash) + SCENE_FIELD_NUMBER;
      hash = (53 * hash) + getScene();
    }
    if (hasLongitude()) {
      hash = (37 * hash) + LONGITUDE_FIELD_NUMBER;
      hash = (53 * hash) + java.lang.Float.floatToIntBits(
          getLongitude());
    }
    if (hasLatitude()) {
      hash = (37 * hash) + LATITUDE_FIELD_NUMBER;
      hash = (53 * hash) + java.lang.Float.floatToIntBits(
          getLatitude());
    }
    if (hasAttachedContent()) {
      hash = (37 * hash) + ATTACHEDCONTENT_FIELD_NUMBER;
      hash = (53 * hash) + getAttachedContent().hashCode();
    }
    if (hasMidHeight()) {
      hash = (37 * hash) + MIDHEIGHT_FIELD_NUMBER;
      hash = (53 * hash) + getMidHeight();
    }
    if (hasMidWidth()) {
      hash = (37 * hash) + MIDWIDTH_FIELD_NUMBER;
      hash = (53 * hash) + getMidWidth();
    }
    if (hasHDHeight()) {
      hash = (37 * hash) + HDHEIGHT_FIELD_NUMBER;
      hash = (53 * hash) + getHDHeight();
    }
    if (hasHDWidth()) {
      hash = (37 * hash) + HDWIDTH_FIELD_NUMBER;
      hash = (53 * hash) + getHDWidth();
    }
    if (hasAeskey()) {
      hash = (37 * hash) + AESKEY_FIELD_NUMBER;
      hash = (53 * hash) + getAeskey().hashCode();
    }
    if (hasEncryVer()) {
      hash = (37 * hash) + ENCRYVER_FIELD_NUMBER;
      hash = (53 * hash) + getEncryVer();
    }
    if (hasCrc32()) {
      hash = (37 * hash) + CRC32_FIELD_NUMBER;
      hash = (53 * hash) + getCrc32();
    }
    if (hasMsgForwardType()) {
      hash = (37 * hash) + MSGFORWARDTYPE_FIELD_NUMBER;
      hash = (53 * hash) + getMsgForwardType();
    }
    if (hasSource()) {
      hash = (37 * hash) + SOURCE_FIELD_NUMBER;
      hash = (53 * hash) + getSource();
    }
    if (hasAppid()) {
      hash = (37 * hash) + APPID_FIELD_NUMBER;
      hash = (53 * hash) + getAppid().hashCode();
    }
    if (hasMessageAction()) {
      hash = (37 * hash) + MESSAGEACTION_FIELD_NUMBER;
      hash = (53 * hash) + getMessageAction().hashCode();
    }
    if (hasMeesageExt()) {
      hash = (37 * hash) + MEESAGEEXT_FIELD_NUMBER;
      hash = (53 * hash) + getMeesageExt().hashCode();
    }
    if (hasMediaTagName()) {
      hash = (37 * hash) + MEDIATAGNAME_FIELD_NUMBER;
      hash = (53 * hash) + getMediaTagName().hashCode();
    }
    if (hasSendMsgTicket()) {
      hash = (37 * hash) + SENDMSGTICKET_FIELD_NUMBER;
      hash = (53 * hash) + getSendMsgTicket().hashCode();
    }
    hash = (29 * hash) + unknownFields.hashCode();
    memoizedHashCode = hash;
    return hash;
  }

  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      java.nio.ByteBuffer data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      java.nio.ByteBuffer data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      com.google.protobuf.ByteString data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      com.google.protobuf.ByteString data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(byte[] data)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      byte[] data,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws com.google.protobuf.InvalidProtocolBufferException {
    return PARSER.parseFrom(data, extensionRegistry);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseDelimitedFrom(java.io.InputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseDelimitedFrom(
      java.io.InputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      com.google.protobuf.CodedInputStream input)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input);
  }
  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest parseFrom(
      com.google.protobuf.CodedInputStream input,
      com.google.protobuf.ExtensionRegistryLite extensionRegistry)
      throws java.io.IOException {
    return com.google.protobuf.GeneratedMessageV3
        .parseWithIOException(PARSER, input, extensionRegistry);
  }

  @java.lang.Override
  public Builder newBuilderForType() { return newBuilder(); }
  public static Builder newBuilder() {
    return DEFAULT_INSTANCE.toBuilder();
  }
  public static Builder newBuilder(wechat.protobuf.CDNUploadMsgImgPrepareRequest prototype) {
    return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
  }
  @java.lang.Override
  public Builder toBuilder() {
    return this == DEFAULT_INSTANCE
        ? new Builder() : new Builder().mergeFrom(this);
  }

  @java.lang.Override
  protected Builder newBuilderForType(
      com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
    Builder builder = new Builder(parent);
    return builder;
  }
  /**
   * Protobuf type {@code wechat_proto.CDNUploadMsgImgPrepareRequest}
   */
  public static final class Builder extends
      com.google.protobuf.GeneratedMessageV3.Builder implements
      // @@protoc_insertion_point(builder_implements:wechat_proto.CDNUploadMsgImgPrepareRequest)
      wechat.protobuf.CDNUploadMsgImgPrepareRequestOrBuilder {
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return wechat.protobuf.Wechat.internal_static_wechat_proto_CDNUploadMsgImgPrepareRequest_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return wechat.protobuf.Wechat.internal_static_wechat_proto_CDNUploadMsgImgPrepareRequest_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              wechat.protobuf.CDNUploadMsgImgPrepareRequest.class, wechat.protobuf.CDNUploadMsgImgPrepareRequest.Builder.class);
    }

    // Construct using wechat.protobuf.CDNUploadMsgImgPrepareRequest.newBuilder()
    private Builder() {
      maybeForceBuilderInitialization();
    }

    private Builder(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      super(parent);
      maybeForceBuilderInitialization();
    }
    private void maybeForceBuilderInitialization() {
      if (com.google.protobuf.GeneratedMessageV3
              .alwaysUseFieldBuilders) {
        getClientStatFieldBuilder();
      }
    }
    @java.lang.Override
    public Builder clear() {
      super.clear();
      clientImgId_ = "";
      bitField0_ = (bitField0_ & ~0x00000001);
      fromUserName_ = "";
      bitField0_ = (bitField0_ & ~0x00000002);
      toUserName_ = "";
      bitField0_ = (bitField0_ & ~0x00000004);
      thumbHeight_ = 0;
      bitField0_ = (bitField0_ & ~0x00000008);
      thumbWidth_ = 0;
      bitField0_ = (bitField0_ & ~0x00000010);
      msgSource_ = "";
      bitField0_ = (bitField0_ & ~0x00000020);
      if (clientStatBuilder_ == null) {
        clientStat_ = null;
      } else {
        clientStatBuilder_.clear();
      }
      bitField0_ = (bitField0_ & ~0x00000040);
      scene_ = 0;
      bitField0_ = (bitField0_ & ~0x00000080);
      longitude_ = 0F;
      bitField0_ = (bitField0_ & ~0x00000100);
      latitude_ = 0F;
      bitField0_ = (bitField0_ & ~0x00000200);
      attachedContent_ = "";
      bitField0_ = (bitField0_ & ~0x00000400);
      midHeight_ = 0;
      bitField0_ = (bitField0_ & ~0x00000800);
      midWidth_ = 0;
      bitField0_ = (bitField0_ & ~0x00001000);
      hDHeight_ = 0;
      bitField0_ = (bitField0_ & ~0x00002000);
      hDWidth_ = 0;
      bitField0_ = (bitField0_ & ~0x00004000);
      aeskey_ = "";
      bitField0_ = (bitField0_ & ~0x00008000);
      encryVer_ = 0;
      bitField0_ = (bitField0_ & ~0x00010000);
      crc32_ = 0;
      bitField0_ = (bitField0_ & ~0x00020000);
      msgForwardType_ = 0;
      bitField0_ = (bitField0_ & ~0x00040000);
      source_ = 0;
      bitField0_ = (bitField0_ & ~0x00080000);
      appid_ = "";
      bitField0_ = (bitField0_ & ~0x00100000);
      messageAction_ = "";
      bitField0_ = (bitField0_ & ~0x00200000);
      meesageExt_ = "";
      bitField0_ = (bitField0_ & ~0x00400000);
      mediaTagName_ = "";
      bitField0_ = (bitField0_ & ~0x00800000);
      sendMsgTicket_ = "";
      bitField0_ = (bitField0_ & ~0x01000000);
      return this;
    }

    @java.lang.Override
    public com.google.protobuf.Descriptors.Descriptor
        getDescriptorForType() {
      return wechat.protobuf.Wechat.internal_static_wechat_proto_CDNUploadMsgImgPrepareRequest_descriptor;
    }

    @java.lang.Override
    public wechat.protobuf.CDNUploadMsgImgPrepareRequest getDefaultInstanceForType() {
      return wechat.protobuf.CDNUploadMsgImgPrepareRequest.getDefaultInstance();
    }

    @java.lang.Override
    public wechat.protobuf.CDNUploadMsgImgPrepareRequest build() {
      wechat.protobuf.CDNUploadMsgImgPrepareRequest result = buildPartial();
      if (!result.isInitialized()) {
        throw newUninitializedMessageException(result);
      }
      return result;
    }

    @java.lang.Override
    public wechat.protobuf.CDNUploadMsgImgPrepareRequest buildPartial() {
      wechat.protobuf.CDNUploadMsgImgPrepareRequest result = new wechat.protobuf.CDNUploadMsgImgPrepareRequest(this);
      int from_bitField0_ = bitField0_;
      int to_bitField0_ = 0;
      if (((from_bitField0_ & 0x00000001) != 0)) {
        to_bitField0_ |= 0x00000001;
      }
      result.clientImgId_ = clientImgId_;
      if (((from_bitField0_ & 0x00000002) != 0)) {
        to_bitField0_ |= 0x00000002;
      }
      result.fromUserName_ = fromUserName_;
      if (((from_bitField0_ & 0x00000004) != 0)) {
        to_bitField0_ |= 0x00000004;
      }
      result.toUserName_ = toUserName_;
      if (((from_bitField0_ & 0x00000008) != 0)) {
        result.thumbHeight_ = thumbHeight_;
        to_bitField0_ |= 0x00000008;
      }
      if (((from_bitField0_ & 0x00000010) != 0)) {
        result.thumbWidth_ = thumbWidth_;
        to_bitField0_ |= 0x00000010;
      }
      if (((from_bitField0_ & 0x00000020) != 0)) {
        to_bitField0_ |= 0x00000020;
      }
      result.msgSource_ = msgSource_;
      if (((from_bitField0_ & 0x00000040) != 0)) {
        if (clientStatBuilder_ == null) {
          result.clientStat_ = clientStat_;
        } else {
          result.clientStat_ = clientStatBuilder_.build();
        }
        to_bitField0_ |= 0x00000040;
      }
      if (((from_bitField0_ & 0x00000080) != 0)) {
        result.scene_ = scene_;
        to_bitField0_ |= 0x00000080;
      }
      if (((from_bitField0_ & 0x00000100) != 0)) {
        result.longitude_ = longitude_;
        to_bitField0_ |= 0x00000100;
      }
      if (((from_bitField0_ & 0x00000200) != 0)) {
        result.latitude_ = latitude_;
        to_bitField0_ |= 0x00000200;
      }
      if (((from_bitField0_ & 0x00000400) != 0)) {
        to_bitField0_ |= 0x00000400;
      }
      result.attachedContent_ = attachedContent_;
      if (((from_bitField0_ & 0x00000800) != 0)) {
        result.midHeight_ = midHeight_;
        to_bitField0_ |= 0x00000800;
      }
      if (((from_bitField0_ & 0x00001000) != 0)) {
        result.midWidth_ = midWidth_;
        to_bitField0_ |= 0x00001000;
      }
      if (((from_bitField0_ & 0x00002000) != 0)) {
        result.hDHeight_ = hDHeight_;
        to_bitField0_ |= 0x00002000;
      }
      if (((from_bitField0_ & 0x00004000) != 0)) {
        result.hDWidth_ = hDWidth_;
        to_bitField0_ |= 0x00004000;
      }
      if (((from_bitField0_ & 0x00008000) != 0)) {
        to_bitField0_ |= 0x00008000;
      }
      result.aeskey_ = aeskey_;
      if (((from_bitField0_ & 0x00010000) != 0)) {
        result.encryVer_ = encryVer_;
        to_bitField0_ |= 0x00010000;
      }
      if (((from_bitField0_ & 0x00020000) != 0)) {
        result.crc32_ = crc32_;
        to_bitField0_ |= 0x00020000;
      }
      if (((from_bitField0_ & 0x00040000) != 0)) {
        result.msgForwardType_ = msgForwardType_;
        to_bitField0_ |= 0x00040000;
      }
      if (((from_bitField0_ & 0x00080000) != 0)) {
        result.source_ = source_;
        to_bitField0_ |= 0x00080000;
      }
      if (((from_bitField0_ & 0x00100000) != 0)) {
        to_bitField0_ |= 0x00100000;
      }
      result.appid_ = appid_;
      if (((from_bitField0_ & 0x00200000) != 0)) {
        to_bitField0_ |= 0x00200000;
      }
      result.messageAction_ = messageAction_;
      if (((from_bitField0_ & 0x00400000) != 0)) {
        to_bitField0_ |= 0x00400000;
      }
      result.meesageExt_ = meesageExt_;
      if (((from_bitField0_ & 0x00800000) != 0)) {
        to_bitField0_ |= 0x00800000;
      }
      result.mediaTagName_ = mediaTagName_;
      if (((from_bitField0_ & 0x01000000) != 0)) {
        to_bitField0_ |= 0x01000000;
      }
      result.sendMsgTicket_ = sendMsgTicket_;
      result.bitField0_ = to_bitField0_;
      onBuilt();
      return result;
    }

    @java.lang.Override
    public Builder clone() {
      return super.clone();
    }
    @java.lang.Override
    public Builder setField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.setField(field, value);
    }
    @java.lang.Override
    public Builder clearField(
        com.google.protobuf.Descriptors.FieldDescriptor field) {
      return super.clearField(field);
    }
    @java.lang.Override
    public Builder clearOneof(
        com.google.protobuf.Descriptors.OneofDescriptor oneof) {
      return super.clearOneof(oneof);
    }
    @java.lang.Override
    public Builder setRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        int index, java.lang.Object value) {
      return super.setRepeatedField(field, index, value);
    }
    @java.lang.Override
    public Builder addRepeatedField(
        com.google.protobuf.Descriptors.FieldDescriptor field,
        java.lang.Object value) {
      return super.addRepeatedField(field, value);
    }
    @java.lang.Override
    public Builder mergeFrom(com.google.protobuf.Message other) {
      if (other instanceof wechat.protobuf.CDNUploadMsgImgPrepareRequest) {
        return mergeFrom((wechat.protobuf.CDNUploadMsgImgPrepareRequest)other);
      } else {
        super.mergeFrom(other);
        return this;
      }
    }

    public Builder mergeFrom(wechat.protobuf.CDNUploadMsgImgPrepareRequest other) {
      if (other == wechat.protobuf.CDNUploadMsgImgPrepareRequest.getDefaultInstance()) return this;
      if (other.hasClientImgId()) {
        bitField0_ |= 0x00000001;
        clientImgId_ = other.clientImgId_;
        onChanged();
      }
      if (other.hasFromUserName()) {
        bitField0_ |= 0x00000002;
        fromUserName_ = other.fromUserName_;
        onChanged();
      }
      if (other.hasToUserName()) {
        bitField0_ |= 0x00000004;
        toUserName_ = other.toUserName_;
        onChanged();
      }
      if (other.hasThumbHeight()) {
        setThumbHeight(other.getThumbHeight());
      }
      if (other.hasThumbWidth()) {
        setThumbWidth(other.getThumbWidth());
      }
      if (other.hasMsgSource()) {
        bitField0_ |= 0x00000020;
        msgSource_ = other.msgSource_;
        onChanged();
      }
      if (other.hasClientStat()) {
        mergeClientStat(other.getClientStat());
      }
      if (other.hasScene()) {
        setScene(other.getScene());
      }
      if (other.hasLongitude()) {
        setLongitude(other.getLongitude());
      }
      if (other.hasLatitude()) {
        setLatitude(other.getLatitude());
      }
      if (other.hasAttachedContent()) {
        bitField0_ |= 0x00000400;
        attachedContent_ = other.attachedContent_;
        onChanged();
      }
      if (other.hasMidHeight()) {
        setMidHeight(other.getMidHeight());
      }
      if (other.hasMidWidth()) {
        setMidWidth(other.getMidWidth());
      }
      if (other.hasHDHeight()) {
        setHDHeight(other.getHDHeight());
      }
      if (other.hasHDWidth()) {
        setHDWidth(other.getHDWidth());
      }
      if (other.hasAeskey()) {
        bitField0_ |= 0x00008000;
        aeskey_ = other.aeskey_;
        onChanged();
      }
      if (other.hasEncryVer()) {
        setEncryVer(other.getEncryVer());
      }
      if (other.hasCrc32()) {
        setCrc32(other.getCrc32());
      }
      if (other.hasMsgForwardType()) {
        setMsgForwardType(other.getMsgForwardType());
      }
      if (other.hasSource()) {
        setSource(other.getSource());
      }
      if (other.hasAppid()) {
        bitField0_ |= 0x00100000;
        appid_ = other.appid_;
        onChanged();
      }
      if (other.hasMessageAction()) {
        bitField0_ |= 0x00200000;
        messageAction_ = other.messageAction_;
        onChanged();
      }
      if (other.hasMeesageExt()) {
        bitField0_ |= 0x00400000;
        meesageExt_ = other.meesageExt_;
        onChanged();
      }
      if (other.hasMediaTagName()) {
        bitField0_ |= 0x00800000;
        mediaTagName_ = other.mediaTagName_;
        onChanged();
      }
      if (other.hasSendMsgTicket()) {
        bitField0_ |= 0x01000000;
        sendMsgTicket_ = other.sendMsgTicket_;
        onChanged();
      }
      this.mergeUnknownFields(other.unknownFields);
      onChanged();
      return this;
    }

    @java.lang.Override
    public final boolean isInitialized() {
      return true;
    }

    @java.lang.Override
    public Builder mergeFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      wechat.protobuf.CDNUploadMsgImgPrepareRequest parsedMessage = null;
      try {
        parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        parsedMessage = (wechat.protobuf.CDNUploadMsgImgPrepareRequest) e.getUnfinishedMessage();
        throw e.unwrapIOException();
      } finally {
        if (parsedMessage != null) {
          mergeFrom(parsedMessage);
        }
      }
      return this;
    }
    private int bitField0_;

    private java.lang.Object clientImgId_ = "";
    /**
     * optional string clientImgId = 1;
     * @return Whether the clientImgId field is set.
     */
    public boolean hasClientImgId() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * optional string clientImgId = 1;
     * @return The clientImgId.
     */
    public java.lang.String getClientImgId() {
      java.lang.Object ref = clientImgId_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          clientImgId_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string clientImgId = 1;
     * @return The bytes for clientImgId.
     */
    public com.google.protobuf.ByteString
        getClientImgIdBytes() {
      java.lang.Object ref = clientImgId_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        clientImgId_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string clientImgId = 1;
     * @param value The clientImgId to set.
     * @return This builder for chaining.
     */
    public Builder setClientImgId(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
      clientImgId_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string clientImgId = 1;
     * @return This builder for chaining.
     */
    public Builder clearClientImgId() {
      bitField0_ = (bitField0_ & ~0x00000001);
      clientImgId_ = getDefaultInstance().getClientImgId();
      onChanged();
      return this;
    }
    /**
     * optional string clientImgId = 1;
     * @param value The bytes for clientImgId to set.
     * @return This builder for chaining.
     */
    public Builder setClientImgIdBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
      clientImgId_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object fromUserName_ = "";
    /**
     * optional string fromUserName = 2;
     * @return Whether the fromUserName field is set.
     */
    public boolean hasFromUserName() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * optional string fromUserName = 2;
     * @return The fromUserName.
     */
    public java.lang.String getFromUserName() {
      java.lang.Object ref = fromUserName_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          fromUserName_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string fromUserName = 2;
     * @return The bytes for fromUserName.
     */
    public com.google.protobuf.ByteString
        getFromUserNameBytes() {
      java.lang.Object ref = fromUserName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        fromUserName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string fromUserName = 2;
     * @param value The fromUserName to set.
     * @return This builder for chaining.
     */
    public Builder setFromUserName(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
      fromUserName_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string fromUserName = 2;
     * @return This builder for chaining.
     */
    public Builder clearFromUserName() {
      bitField0_ = (bitField0_ & ~0x00000002);
      fromUserName_ = getDefaultInstance().getFromUserName();
      onChanged();
      return this;
    }
    /**
     * optional string fromUserName = 2;
     * @param value The bytes for fromUserName to set.
     * @return This builder for chaining.
     */
    public Builder setFromUserNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
      fromUserName_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object toUserName_ = "";
    /**
     * optional string toUserName = 3;
     * @return Whether the toUserName field is set.
     */
    public boolean hasToUserName() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * optional string toUserName = 3;
     * @return The toUserName.
     */
    public java.lang.String getToUserName() {
      java.lang.Object ref = toUserName_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          toUserName_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string toUserName = 3;
     * @return The bytes for toUserName.
     */
    public com.google.protobuf.ByteString
        getToUserNameBytes() {
      java.lang.Object ref = toUserName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        toUserName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string toUserName = 3;
     * @param value The toUserName to set.
     * @return This builder for chaining.
     */
    public Builder setToUserName(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
      toUserName_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string toUserName = 3;
     * @return This builder for chaining.
     */
    public Builder clearToUserName() {
      bitField0_ = (bitField0_ & ~0x00000004);
      toUserName_ = getDefaultInstance().getToUserName();
      onChanged();
      return this;
    }
    /**
     * optional string toUserName = 3;
     * @param value The bytes for toUserName to set.
     * @return This builder for chaining.
     */
    public Builder setToUserNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
      toUserName_ = value;
      onChanged();
      return this;
    }

    private int thumbHeight_ ;
    /**
     * optional int32 thumbHeight = 4;
     * @return Whether the thumbHeight field is set.
     */
    @java.lang.Override
    public boolean hasThumbHeight() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * optional int32 thumbHeight = 4;
     * @return The thumbHeight.
     */
    @java.lang.Override
    public int getThumbHeight() {
      return thumbHeight_;
    }
    /**
     * optional int32 thumbHeight = 4;
     * @param value The thumbHeight to set.
     * @return This builder for chaining.
     */
    public Builder setThumbHeight(int value) {
      bitField0_ |= 0x00000008;
      thumbHeight_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 thumbHeight = 4;
     * @return This builder for chaining.
     */
    public Builder clearThumbHeight() {
      bitField0_ = (bitField0_ & ~0x00000008);
      thumbHeight_ = 0;
      onChanged();
      return this;
    }

    private int thumbWidth_ ;
    /**
     * optional int32 thumbWidth = 5;
     * @return Whether the thumbWidth field is set.
     */
    @java.lang.Override
    public boolean hasThumbWidth() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * optional int32 thumbWidth = 5;
     * @return The thumbWidth.
     */
    @java.lang.Override
    public int getThumbWidth() {
      return thumbWidth_;
    }
    /**
     * optional int32 thumbWidth = 5;
     * @param value The thumbWidth to set.
     * @return This builder for chaining.
     */
    public Builder setThumbWidth(int value) {
      bitField0_ |= 0x00000010;
      thumbWidth_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 thumbWidth = 5;
     * @return This builder for chaining.
     */
    public Builder clearThumbWidth() {
      bitField0_ = (bitField0_ & ~0x00000010);
      thumbWidth_ = 0;
      onChanged();
      return this;
    }

    private java.lang.Object msgSource_ = "";
    /**
     * optional string msgSource = 6;
     * @return Whether the msgSource field is set.
     */
    public boolean hasMsgSource() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * optional string msgSource = 6;
     * @return The msgSource.
     */
    public java.lang.String getMsgSource() {
      java.lang.Object ref = msgSource_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          msgSource_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string msgSource = 6;
     * @return The bytes for msgSource.
     */
    public com.google.protobuf.ByteString
        getMsgSourceBytes() {
      java.lang.Object ref = msgSource_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        msgSource_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string msgSource = 6;
     * @param value The msgSource to set.
     * @return This builder for chaining.
     */
    public Builder setMsgSource(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
      msgSource_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string msgSource = 6;
     * @return This builder for chaining.
     */
    public Builder clearMsgSource() {
      bitField0_ = (bitField0_ & ~0x00000020);
      msgSource_ = getDefaultInstance().getMsgSource();
      onChanged();
      return this;
    }
    /**
     * optional string msgSource = 6;
     * @param value The bytes for msgSource to set.
     * @return This builder for chaining.
     */
    public Builder setMsgSourceBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000020;
      msgSource_ = value;
      onChanged();
      return this;
    }

    private wechat.protobuf.SKBuiltinString_ clientStat_;
    private com.google.protobuf.SingleFieldBuilderV3<
        wechat.protobuf.SKBuiltinString_, wechat.protobuf.SKBuiltinString_.Builder, wechat.protobuf.SKBuiltinString_OrBuilder> clientStatBuilder_;
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     * @return Whether the clientStat field is set.
     */
    public boolean hasClientStat() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     * @return The clientStat.
     */
    public wechat.protobuf.SKBuiltinString_ getClientStat() {
      if (clientStatBuilder_ == null) {
        return clientStat_ == null ? wechat.protobuf.SKBuiltinString_.getDefaultInstance() : clientStat_;
      } else {
        return clientStatBuilder_.getMessage();
      }
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public Builder setClientStat(wechat.protobuf.SKBuiltinString_ value) {
      if (clientStatBuilder_ == null) {
        if (value == null) {
          throw new NullPointerException();
        }
        clientStat_ = value;
        onChanged();
      } else {
        clientStatBuilder_.setMessage(value);
      }
      bitField0_ |= 0x00000040;
      return this;
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public Builder setClientStat(
        wechat.protobuf.SKBuiltinString_.Builder builderForValue) {
      if (clientStatBuilder_ == null) {
        clientStat_ = builderForValue.build();
        onChanged();
      } else {
        clientStatBuilder_.setMessage(builderForValue.build());
      }
      bitField0_ |= 0x00000040;
      return this;
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public Builder mergeClientStat(wechat.protobuf.SKBuiltinString_ value) {
      if (clientStatBuilder_ == null) {
        if (((bitField0_ & 0x00000040) != 0) &&
            clientStat_ != null &&
            clientStat_ != wechat.protobuf.SKBuiltinString_.getDefaultInstance()) {
          clientStat_ =
            wechat.protobuf.SKBuiltinString_.newBuilder(clientStat_).mergeFrom(value).buildPartial();
        } else {
          clientStat_ = value;
        }
        onChanged();
      } else {
        clientStatBuilder_.mergeFrom(value);
      }
      bitField0_ |= 0x00000040;
      return this;
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public Builder clearClientStat() {
      if (clientStatBuilder_ == null) {
        clientStat_ = null;
        onChanged();
      } else {
        clientStatBuilder_.clear();
      }
      bitField0_ = (bitField0_ & ~0x00000040);
      return this;
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public wechat.protobuf.SKBuiltinString_.Builder getClientStatBuilder() {
      bitField0_ |= 0x00000040;
      onChanged();
      return getClientStatFieldBuilder().getBuilder();
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    public wechat.protobuf.SKBuiltinString_OrBuilder getClientStatOrBuilder() {
      if (clientStatBuilder_ != null) {
        return clientStatBuilder_.getMessageOrBuilder();
      } else {
        return clientStat_ == null ?
            wechat.protobuf.SKBuiltinString_.getDefaultInstance() : clientStat_;
      }
    }
    /**
     * optional .wechat_proto.SKBuiltinString_ clientStat = 7;
     */
    private com.google.protobuf.SingleFieldBuilderV3<
        wechat.protobuf.SKBuiltinString_, wechat.protobuf.SKBuiltinString_.Builder, wechat.protobuf.SKBuiltinString_OrBuilder> 
        getClientStatFieldBuilder() {
      if (clientStatBuilder_ == null) {
        clientStatBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
            wechat.protobuf.SKBuiltinString_, wechat.protobuf.SKBuiltinString_.Builder, wechat.protobuf.SKBuiltinString_OrBuilder>(
                getClientStat(),
                getParentForChildren(),
                isClean());
        clientStat_ = null;
      }
      return clientStatBuilder_;
    }

    private int scene_ ;
    /**
     * optional int32 scene = 8;
     * @return Whether the scene field is set.
     */
    @java.lang.Override
    public boolean hasScene() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * optional int32 scene = 8;
     * @return The scene.
     */
    @java.lang.Override
    public int getScene() {
      return scene_;
    }
    /**
     * optional int32 scene = 8;
     * @param value The scene to set.
     * @return This builder for chaining.
     */
    public Builder setScene(int value) {
      bitField0_ |= 0x00000080;
      scene_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 scene = 8;
     * @return This builder for chaining.
     */
    public Builder clearScene() {
      bitField0_ = (bitField0_ & ~0x00000080);
      scene_ = 0;
      onChanged();
      return this;
    }

    private float longitude_ ;
    /**
     * optional float longitude = 9;
     * @return Whether the longitude field is set.
     */
    @java.lang.Override
    public boolean hasLongitude() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * optional float longitude = 9;
     * @return The longitude.
     */
    @java.lang.Override
    public float getLongitude() {
      return longitude_;
    }
    /**
     * optional float longitude = 9;
     * @param value The longitude to set.
     * @return This builder for chaining.
     */
    public Builder setLongitude(float value) {
      bitField0_ |= 0x00000100;
      longitude_ = value;
      onChanged();
      return this;
    }
    /**
     * optional float longitude = 9;
     * @return This builder for chaining.
     */
    public Builder clearLongitude() {
      bitField0_ = (bitField0_ & ~0x00000100);
      longitude_ = 0F;
      onChanged();
      return this;
    }

    private float latitude_ ;
    /**
     * optional float latitude = 10;
     * @return Whether the latitude field is set.
     */
    @java.lang.Override
    public boolean hasLatitude() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * optional float latitude = 10;
     * @return The latitude.
     */
    @java.lang.Override
    public float getLatitude() {
      return latitude_;
    }
    /**
     * optional float latitude = 10;
     * @param value The latitude to set.
     * @return This builder for chaining.
     */
    public Builder setLatitude(float value) {
      bitField0_ |= 0x00000200;
      latitude_ = value;
      onChanged();
      return this;
    }
    /**
     * optional float latitude = 10;
     * @return This builder for chaining.
     */
    public Builder clearLatitude() {
      bitField0_ = (bitField0_ & ~0x00000200);
      latitude_ = 0F;
      onChanged();
      return this;
    }

    private java.lang.Object attachedContent_ = "";
    /**
     * optional string attachedContent = 11;
     * @return Whether the attachedContent field is set.
     */
    public boolean hasAttachedContent() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * optional string attachedContent = 11;
     * @return The attachedContent.
     */
    public java.lang.String getAttachedContent() {
      java.lang.Object ref = attachedContent_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          attachedContent_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string attachedContent = 11;
     * @return The bytes for attachedContent.
     */
    public com.google.protobuf.ByteString
        getAttachedContentBytes() {
      java.lang.Object ref = attachedContent_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        attachedContent_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string attachedContent = 11;
     * @param value The attachedContent to set.
     * @return This builder for chaining.
     */
    public Builder setAttachedContent(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
      attachedContent_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string attachedContent = 11;
     * @return This builder for chaining.
     */
    public Builder clearAttachedContent() {
      bitField0_ = (bitField0_ & ~0x00000400);
      attachedContent_ = getDefaultInstance().getAttachedContent();
      onChanged();
      return this;
    }
    /**
     * optional string attachedContent = 11;
     * @param value The bytes for attachedContent to set.
     * @return This builder for chaining.
     */
    public Builder setAttachedContentBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
      attachedContent_ = value;
      onChanged();
      return this;
    }

    private int midHeight_ ;
    /**
     * optional int32 MidHeight = 12;
     * @return Whether the midHeight field is set.
     */
    @java.lang.Override
    public boolean hasMidHeight() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * optional int32 MidHeight = 12;
     * @return The midHeight.
     */
    @java.lang.Override
    public int getMidHeight() {
      return midHeight_;
    }
    /**
     * optional int32 MidHeight = 12;
     * @param value The midHeight to set.
     * @return This builder for chaining.
     */
    public Builder setMidHeight(int value) {
      bitField0_ |= 0x00000800;
      midHeight_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 MidHeight = 12;
     * @return This builder for chaining.
     */
    public Builder clearMidHeight() {
      bitField0_ = (bitField0_ & ~0x00000800);
      midHeight_ = 0;
      onChanged();
      return this;
    }

    private int midWidth_ ;
    /**
     * optional int32 MidWidth = 13;
     * @return Whether the midWidth field is set.
     */
    @java.lang.Override
    public boolean hasMidWidth() {
      return ((bitField0_ & 0x00001000) != 0);
    }
    /**
     * optional int32 MidWidth = 13;
     * @return The midWidth.
     */
    @java.lang.Override
    public int getMidWidth() {
      return midWidth_;
    }
    /**
     * optional int32 MidWidth = 13;
     * @param value The midWidth to set.
     * @return This builder for chaining.
     */
    public Builder setMidWidth(int value) {
      bitField0_ |= 0x00001000;
      midWidth_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 MidWidth = 13;
     * @return This builder for chaining.
     */
    public Builder clearMidWidth() {
      bitField0_ = (bitField0_ & ~0x00001000);
      midWidth_ = 0;
      onChanged();
      return this;
    }

    private int hDHeight_ ;
    /**
     * optional int32 HDHeight = 14;
     * @return Whether the hDHeight field is set.
     */
    @java.lang.Override
    public boolean hasHDHeight() {
      return ((bitField0_ & 0x00002000) != 0);
    }
    /**
     * optional int32 HDHeight = 14;
     * @return The hDHeight.
     */
    @java.lang.Override
    public int getHDHeight() {
      return hDHeight_;
    }
    /**
     * optional int32 HDHeight = 14;
     * @param value The hDHeight to set.
     * @return This builder for chaining.
     */
    public Builder setHDHeight(int value) {
      bitField0_ |= 0x00002000;
      hDHeight_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 HDHeight = 14;
     * @return This builder for chaining.
     */
    public Builder clearHDHeight() {
      bitField0_ = (bitField0_ & ~0x00002000);
      hDHeight_ = 0;
      onChanged();
      return this;
    }

    private int hDWidth_ ;
    /**
     * optional int32 HDWidth = 15;
     * @return Whether the hDWidth field is set.
     */
    @java.lang.Override
    public boolean hasHDWidth() {
      return ((bitField0_ & 0x00004000) != 0);
    }
    /**
     * optional int32 HDWidth = 15;
     * @return The hDWidth.
     */
    @java.lang.Override
    public int getHDWidth() {
      return hDWidth_;
    }
    /**
     * optional int32 HDWidth = 15;
     * @param value The hDWidth to set.
     * @return This builder for chaining.
     */
    public Builder setHDWidth(int value) {
      bitField0_ |= 0x00004000;
      hDWidth_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 HDWidth = 15;
     * @return This builder for chaining.
     */
    public Builder clearHDWidth() {
      bitField0_ = (bitField0_ & ~0x00004000);
      hDWidth_ = 0;
      onChanged();
      return this;
    }

    private java.lang.Object aeskey_ = "";
    /**
     * optional string aeskey = 16;
     * @return Whether the aeskey field is set.
     */
    public boolean hasAeskey() {
      return ((bitField0_ & 0x00008000) != 0);
    }
    /**
     * optional string aeskey = 16;
     * @return The aeskey.
     */
    public java.lang.String getAeskey() {
      java.lang.Object ref = aeskey_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          aeskey_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string aeskey = 16;
     * @return The bytes for aeskey.
     */
    public com.google.protobuf.ByteString
        getAeskeyBytes() {
      java.lang.Object ref = aeskey_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        aeskey_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string aeskey = 16;
     * @param value The aeskey to set.
     * @return This builder for chaining.
     */
    public Builder setAeskey(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00008000;
      aeskey_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string aeskey = 16;
     * @return This builder for chaining.
     */
    public Builder clearAeskey() {
      bitField0_ = (bitField0_ & ~0x00008000);
      aeskey_ = getDefaultInstance().getAeskey();
      onChanged();
      return this;
    }
    /**
     * optional string aeskey = 16;
     * @param value The bytes for aeskey to set.
     * @return This builder for chaining.
     */
    public Builder setAeskeyBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00008000;
      aeskey_ = value;
      onChanged();
      return this;
    }

    private int encryVer_ ;
    /**
     * optional int32 encryVer = 17;
     * @return Whether the encryVer field is set.
     */
    @java.lang.Override
    public boolean hasEncryVer() {
      return ((bitField0_ & 0x00010000) != 0);
    }
    /**
     * optional int32 encryVer = 17;
     * @return The encryVer.
     */
    @java.lang.Override
    public int getEncryVer() {
      return encryVer_;
    }
    /**
     * optional int32 encryVer = 17;
     * @param value The encryVer to set.
     * @return This builder for chaining.
     */
    public Builder setEncryVer(int value) {
      bitField0_ |= 0x00010000;
      encryVer_ = value;
      onChanged();
      return this;
    }
    /**
     * optional int32 encryVer = 17;
     * @return This builder for chaining.
     */
    public Builder clearEncryVer() {
      bitField0_ = (bitField0_ & ~0x00010000);
      encryVer_ = 0;
      onChanged();
      return this;
    }

    private int crc32_ ;
    /**
     * optional uint32 crc32 = 18;
     * @return Whether the crc32 field is set.
     */
    @java.lang.Override
    public boolean hasCrc32() {
      return ((bitField0_ & 0x00020000) != 0);
    }
    /**
     * optional uint32 crc32 = 18;
     * @return The crc32.
     */
    @java.lang.Override
    public int getCrc32() {
      return crc32_;
    }
    /**
     * optional uint32 crc32 = 18;
     * @param value The crc32 to set.
     * @return This builder for chaining.
     */
    public Builder setCrc32(int value) {
      bitField0_ |= 0x00020000;
      crc32_ = value;
      onChanged();
      return this;
    }
    /**
     * optional uint32 crc32 = 18;
     * @return This builder for chaining.
     */
    public Builder clearCrc32() {
      bitField0_ = (bitField0_ & ~0x00020000);
      crc32_ = 0;
      onChanged();
      return this;
    }

    private int msgForwardType_ ;
    /**
     * optional uint32 msgForwardType = 19;
     * @return Whether the msgForwardType field is set.
     */
    @java.lang.Override
    public boolean hasMsgForwardType() {
      return ((bitField0_ & 0x00040000) != 0);
    }
    /**
     * optional uint32 msgForwardType = 19;
     * @return The msgForwardType.
     */
    @java.lang.Override
    public int getMsgForwardType() {
      return msgForwardType_;
    }
    /**
     * optional uint32 msgForwardType = 19;
     * @param value The msgForwardType to set.
     * @return This builder for chaining.
     */
    public Builder setMsgForwardType(int value) {
      bitField0_ |= 0x00040000;
      msgForwardType_ = value;
      onChanged();
      return this;
    }
    /**
     * optional uint32 msgForwardType = 19;
     * @return This builder for chaining.
     */
    public Builder clearMsgForwardType() {
      bitField0_ = (bitField0_ & ~0x00040000);
      msgForwardType_ = 0;
      onChanged();
      return this;
    }

    private int source_ ;
    /**
     * optional uint32 source = 20;
     * @return Whether the source field is set.
     */
    @java.lang.Override
    public boolean hasSource() {
      return ((bitField0_ & 0x00080000) != 0);
    }
    /**
     * optional uint32 source = 20;
     * @return The source.
     */
    @java.lang.Override
    public int getSource() {
      return source_;
    }
    /**
     * optional uint32 source = 20;
     * @param value The source to set.
     * @return This builder for chaining.
     */
    public Builder setSource(int value) {
      bitField0_ |= 0x00080000;
      source_ = value;
      onChanged();
      return this;
    }
    /**
     * optional uint32 source = 20;
     * @return This builder for chaining.
     */
    public Builder clearSource() {
      bitField0_ = (bitField0_ & ~0x00080000);
      source_ = 0;
      onChanged();
      return this;
    }

    private java.lang.Object appid_ = "";
    /**
     * optional string appid = 21;
     * @return Whether the appid field is set.
     */
    public boolean hasAppid() {
      return ((bitField0_ & 0x00100000) != 0);
    }
    /**
     * optional string appid = 21;
     * @return The appid.
     */
    public java.lang.String getAppid() {
      java.lang.Object ref = appid_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          appid_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string appid = 21;
     * @return The bytes for appid.
     */
    public com.google.protobuf.ByteString
        getAppidBytes() {
      java.lang.Object ref = appid_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        appid_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string appid = 21;
     * @param value The appid to set.
     * @return This builder for chaining.
     */
    public Builder setAppid(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00100000;
      appid_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string appid = 21;
     * @return This builder for chaining.
     */
    public Builder clearAppid() {
      bitField0_ = (bitField0_ & ~0x00100000);
      appid_ = getDefaultInstance().getAppid();
      onChanged();
      return this;
    }
    /**
     * optional string appid = 21;
     * @param value The bytes for appid to set.
     * @return This builder for chaining.
     */
    public Builder setAppidBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00100000;
      appid_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object messageAction_ = "";
    /**
     * optional string messageAction = 22;
     * @return Whether the messageAction field is set.
     */
    public boolean hasMessageAction() {
      return ((bitField0_ & 0x00200000) != 0);
    }
    /**
     * optional string messageAction = 22;
     * @return The messageAction.
     */
    public java.lang.String getMessageAction() {
      java.lang.Object ref = messageAction_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          messageAction_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string messageAction = 22;
     * @return The bytes for messageAction.
     */
    public com.google.protobuf.ByteString
        getMessageActionBytes() {
      java.lang.Object ref = messageAction_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        messageAction_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string messageAction = 22;
     * @param value The messageAction to set.
     * @return This builder for chaining.
     */
    public Builder setMessageAction(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00200000;
      messageAction_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string messageAction = 22;
     * @return This builder for chaining.
     */
    public Builder clearMessageAction() {
      bitField0_ = (bitField0_ & ~0x00200000);
      messageAction_ = getDefaultInstance().getMessageAction();
      onChanged();
      return this;
    }
    /**
     * optional string messageAction = 22;
     * @param value The bytes for messageAction to set.
     * @return This builder for chaining.
     */
    public Builder setMessageActionBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00200000;
      messageAction_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object meesageExt_ = "";
    /**
     * optional string meesageExt = 23;
     * @return Whether the meesageExt field is set.
     */
    public boolean hasMeesageExt() {
      return ((bitField0_ & 0x00400000) != 0);
    }
    /**
     * optional string meesageExt = 23;
     * @return The meesageExt.
     */
    public java.lang.String getMeesageExt() {
      java.lang.Object ref = meesageExt_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          meesageExt_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string meesageExt = 23;
     * @return The bytes for meesageExt.
     */
    public com.google.protobuf.ByteString
        getMeesageExtBytes() {
      java.lang.Object ref = meesageExt_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        meesageExt_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string meesageExt = 23;
     * @param value The meesageExt to set.
     * @return This builder for chaining.
     */
    public Builder setMeesageExt(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00400000;
      meesageExt_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string meesageExt = 23;
     * @return This builder for chaining.
     */
    public Builder clearMeesageExt() {
      bitField0_ = (bitField0_ & ~0x00400000);
      meesageExt_ = getDefaultInstance().getMeesageExt();
      onChanged();
      return this;
    }
    /**
     * optional string meesageExt = 23;
     * @param value The bytes for meesageExt to set.
     * @return This builder for chaining.
     */
    public Builder setMeesageExtBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00400000;
      meesageExt_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object mediaTagName_ = "";
    /**
     * optional string mediaTagName = 24;
     * @return Whether the mediaTagName field is set.
     */
    public boolean hasMediaTagName() {
      return ((bitField0_ & 0x00800000) != 0);
    }
    /**
     * optional string mediaTagName = 24;
     * @return The mediaTagName.
     */
    public java.lang.String getMediaTagName() {
      java.lang.Object ref = mediaTagName_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          mediaTagName_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string mediaTagName = 24;
     * @return The bytes for mediaTagName.
     */
    public com.google.protobuf.ByteString
        getMediaTagNameBytes() {
      java.lang.Object ref = mediaTagName_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        mediaTagName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string mediaTagName = 24;
     * @param value The mediaTagName to set.
     * @return This builder for chaining.
     */
    public Builder setMediaTagName(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00800000;
      mediaTagName_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string mediaTagName = 24;
     * @return This builder for chaining.
     */
    public Builder clearMediaTagName() {
      bitField0_ = (bitField0_ & ~0x00800000);
      mediaTagName_ = getDefaultInstance().getMediaTagName();
      onChanged();
      return this;
    }
    /**
     * optional string mediaTagName = 24;
     * @param value The bytes for mediaTagName to set.
     * @return This builder for chaining.
     */
    public Builder setMediaTagNameBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00800000;
      mediaTagName_ = value;
      onChanged();
      return this;
    }

    private java.lang.Object sendMsgTicket_ = "";
    /**
     * optional string SendMsgTicket = 25;
     * @return Whether the sendMsgTicket field is set.
     */
    public boolean hasSendMsgTicket() {
      return ((bitField0_ & 0x01000000) != 0);
    }
    /**
     * optional string SendMsgTicket = 25;
     * @return The sendMsgTicket.
     */
    public java.lang.String getSendMsgTicket() {
      java.lang.Object ref = sendMsgTicket_;
      if (!(ref instanceof java.lang.String)) {
        com.google.protobuf.ByteString bs =
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          sendMsgTicket_ = s;
        }
        return s;
      } else {
        return (java.lang.String) ref;
      }
    }
    /**
     * optional string SendMsgTicket = 25;
     * @return The bytes for sendMsgTicket.
     */
    public com.google.protobuf.ByteString
        getSendMsgTicketBytes() {
      java.lang.Object ref = sendMsgTicket_;
      if (ref instanceof String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        sendMsgTicket_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }
    /**
     * optional string SendMsgTicket = 25;
     * @param value The sendMsgTicket to set.
     * @return This builder for chaining.
     */
    public Builder setSendMsgTicket(
        java.lang.String value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x01000000;
      sendMsgTicket_ = value;
      onChanged();
      return this;
    }
    /**
     * optional string SendMsgTicket = 25;
     * @return This builder for chaining.
     */
    public Builder clearSendMsgTicket() {
      bitField0_ = (bitField0_ & ~0x01000000);
      sendMsgTicket_ = getDefaultInstance().getSendMsgTicket();
      onChanged();
      return this;
    }
    /**
     * optional string SendMsgTicket = 25;
     * @param value The bytes for sendMsgTicket to set.
     * @return This builder for chaining.
     */
    public Builder setSendMsgTicketBytes(
        com.google.protobuf.ByteString value) {
      if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x01000000;
      sendMsgTicket_ = value;
      onChanged();
      return this;
    }
    @java.lang.Override
    public final Builder setUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.setUnknownFields(unknownFields);
    }

    @java.lang.Override
    public final Builder mergeUnknownFields(
        final com.google.protobuf.UnknownFieldSet unknownFields) {
      return super.mergeUnknownFields(unknownFields);
    }


    // @@protoc_insertion_point(builder_scope:wechat_proto.CDNUploadMsgImgPrepareRequest)
  }

  // @@protoc_insertion_point(class_scope:wechat_proto.CDNUploadMsgImgPrepareRequest)
  private static final wechat.protobuf.CDNUploadMsgImgPrepareRequest DEFAULT_INSTANCE;
  static {
    DEFAULT_INSTANCE = new wechat.protobuf.CDNUploadMsgImgPrepareRequest();
  }

  public static wechat.protobuf.CDNUploadMsgImgPrepareRequest getDefaultInstance() {
    return DEFAULT_INSTANCE;
  }

  @java.lang.Deprecated public static final com.google.protobuf.Parser
      PARSER = new com.google.protobuf.AbstractParser() {
    @java.lang.Override
    public CDNUploadMsgImgPrepareRequest parsePartialFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return new CDNUploadMsgImgPrepareRequest(input, extensionRegistry);
    }
  };

  public static com.google.protobuf.Parser parser() {
    return PARSER;
  }

  @java.lang.Override
  public com.google.protobuf.Parser getParserForType() {
    return PARSER;
  }

  @java.lang.Override
  public wechat.protobuf.CDNUploadMsgImgPrepareRequest getDefaultInstanceForType() {
    return DEFAULT_INSTANCE;
  }

}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy