readMessageBegin method

  1. @override
TMessage readMessageBegin()
override

Read

Implementation

@override
TMessage readMessageBegin() {
  int protocolId = readByte();
  if (protocolId != PROTOCOL_ID) {
    throw TProtocolError(TProtocolErrorType.INVALID_DATA,
        "Expected protocol id $PROTOCOL_ID but got $protocolId");
  }
  int versionAndType = readByte();
  version_ = (versionAndType & VERSION_MASK).toSigned(8);
  if (!(version_ <= VERSION && version_ >= VERSION_LOW)) {
    throw TProtocolError(TProtocolErrorType.INVALID_DATA,
        "Expected version $VERSION or lower but got $version_");
  }

  int type = (versionAndType >> TYPE_SHIFT_AMOUNT).toSigned(8);
  int seqid = readVarint32();
  String messageName = readString();
  return TMessage(messageName, type, seqid);
}