Начало трансляции сервероного кода к новому протоколу
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package im.rosetta.network.codec;
|
||||
|
||||
import io.orprotocol.ProtocolException;
|
||||
import io.orprotocol.buffer.Buffer;
|
||||
import io.orprotocol.codec.Codec;
|
||||
import io.orprotocol.tlv.read.TlvReader;
|
||||
import io.orprotocol.tlv.write.TlvWriter;
|
||||
import im.rosetta.network.packet.PacketSearch;
|
||||
|
||||
// Auto-generated by RCC (Rosetta Code Compiler). Do not edit manually.
|
||||
public class PacketSearchCodec implements Codec<PacketSearch> {
|
||||
private static final int F_PRIVATE_KEY = 1;
|
||||
private static final int F_SEARCH = 2;
|
||||
private static final int F_SEARCH_INFO = 3;
|
||||
|
||||
@Override
|
||||
public PacketSearch decode(Buffer data, int version) throws ProtocolException {
|
||||
byte[] payload = data.readBytes(data.remaining());
|
||||
TlvReader reader = new TlvReader(payload);
|
||||
PacketSearch packet = new PacketSearch();
|
||||
if (version >= 1) {
|
||||
packet.privateKey = reader.getString(F_PRIVATE_KEY);
|
||||
}
|
||||
if (version >= 1) {
|
||||
packet.search = reader.getString(F_SEARCH);
|
||||
}
|
||||
if (version >= 1) {
|
||||
packet.searchInfo = SearchInfoCodec.decodeList(reader.getBytesList(F_SEARCH_INFO), version);
|
||||
}
|
||||
return packet;
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] encode(PacketSearch packet, int version) throws ProtocolException {
|
||||
TlvWriter writer = new TlvWriter();
|
||||
if (version >= 1) {
|
||||
if (packet.privateKey != null) writer.writeString(F_PRIVATE_KEY, packet.privateKey);
|
||||
}
|
||||
if (version >= 1) {
|
||||
if (packet.search != null) writer.writeString(F_SEARCH, packet.search);
|
||||
}
|
||||
if (version >= 1) {
|
||||
if (packet.searchInfo != null) writer.writeBytesList(F_SEARCH_INFO, SearchInfoCodec.encodeList(packet.searchInfo, version));
|
||||
}
|
||||
return writer.toByteArray();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user