in serializer/seata-serializer-seata/src/main/java/org/apache/seata/serializer/seata/protocol/RegisterRMRequestCodec.java [54:125]
public <T> void decode(T t, ByteBuffer in) {
RegisterRMRequest registerRMRequest = (RegisterRMRequest)t;
if (in.remaining() < 2) {
return;
}
short len = in.getShort();
if (len > 0) {
if (in.remaining() < len) {
return;
}
byte[] bs = new byte[len];
in.get(bs);
registerRMRequest.setVersion(new String(bs, UTF8));
} else {
return;
}
if (in.remaining() < 2) {
return;
}
len = in.getShort();
if (len > 0) {
if (in.remaining() < len) {
return;
}
byte[] bs = new byte[len];
in.get(bs);
registerRMRequest.setApplicationId(new String(bs, UTF8));
}
if (in.remaining() < 2) {
return;
}
len = in.getShort();
if (in.remaining() < len) {
return;
}
byte[] bs = new byte[len];
in.get(bs);
registerRMRequest.setTransactionServiceGroup(new String(bs, UTF8));
if (in.remaining() < 2) {
return;
}
len = in.getShort();
if (len > 0) {
if (in.remaining() < len) {
return;
}
bs = new byte[len];
in.get(bs);
registerRMRequest.setExtraData(new String(bs, UTF8));
}
int iLen;
if (in.remaining() < 4) {
return;
}
iLen = in.getInt();
if (iLen > 0) {
if (in.remaining() < iLen) {
return;
}
bs = new byte[iLen];
in.get(bs);
registerRMRequest.setResourceIds(new String(bs, UTF8));
}
}