ProtocolUtil.java
1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package com.crossoverjie.cim.common.protocol;
import com.google.protobuf.InvalidProtocolBufferException;
/**
* Function:
*
* @author crossoverJie
* Date: 2018/8/1 12:24
* @since JDK 1.8
*/
public class ProtocolUtil {
public static void main(String[] args) throws InvalidProtocolBufferException {
CIMRequestProto.CIMReqProtocol protocol = CIMRequestProto.CIMReqProtocol.newBuilder()
.setRequestId(123L)
.setReqMsg("你好啊")
.build();
byte[] encode = encode(protocol);
CIMRequestProto.CIMReqProtocol parseFrom = decode(encode);
System.out.println(protocol.toString());
System.out.println(protocol.toString().equals(parseFrom.toString()));
}
/**
* 编码
* @param protocol
* @return
*/
public static byte[] encode(CIMRequestProto.CIMReqProtocol protocol){
return protocol.toByteArray() ;
}
/**
* 解码
* @param bytes
* @return
* @throws InvalidProtocolBufferException
*/
public static CIMRequestProto.CIMReqProtocol decode(byte[] bytes) throws InvalidProtocolBufferException {
return CIMRequestProto.CIMReqProtocol.parseFrom(bytes);
}
}