29 lines
968 B
Java
29 lines
968 B
Java
package com.dust.tripartite.netmc.codec;
|
|
|
|
import com.dust.tripartite.netmc.model.MyHeader;
|
|
import com.dust.tripartite.netmc.model.MyMessage;
|
|
import com.dust.tripartite.netmc.session.Session;
|
|
import io.netty.buffer.ByteBuf;
|
|
|
|
import java.nio.charset.StandardCharsets;
|
|
|
|
public class MyMessageDecoder implements MessageDecoder {
|
|
|
|
@Override
|
|
public Object decode(ByteBuf buf, Session session) {
|
|
String msgStr = buf.readCharSequence(buf.readableBytes(), StandardCharsets.UTF_8).toString();
|
|
String[] allStr = msgStr.split(";");
|
|
String[] headStr = allStr[0].split(",");
|
|
String bodyStr = allStr[1];
|
|
|
|
MyHeader header = new MyHeader();
|
|
header.setClientId(headStr[0]);
|
|
header.setType(Integer.valueOf(headStr[1]));
|
|
header.setSerialNo(Integer.valueOf(headStr[2]));
|
|
|
|
MyMessage message = new MyMessage();
|
|
message.setHeader(header);
|
|
message.setBody(bodyStr);
|
|
return message;
|
|
}
|
|
} |