最近在做socket通信中用到了关于序列化工具选型的问题,在调研过程中开始趋向于用protobuf,可以省去了编解码的过程。能够实现快速开发,且只需要维护一份协议文件即可。
但是调研过程中发现了protobuf的一些弊端,比如需要生成相应的文件类,和业务绑定太紧密,所以在看了AVRO之后发现它完美解决了这个问题。
下面记录下对这两种序列化工具的入门与测评。
一、protobuf基本操作
protobuf简介:
Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.
protobuf是google提供的一种跨语言、跨平台、可扩展的序列化工具。
1.1定义协议文件(部分字段)(TCPLog.proto):
syntax = "proto2";
message TCPLog{
optional int32 total_byteps = 1;
optional int64 flow_start_time =2;
optional int64 date =3;
}
1.2生成对应的Java类:
生成过程可以使用ecplise 的插件 或者 直接在控制台中使用命令生成。
命令行中生成规则如下:
protoc.exe -I=proto的输入目录 --java_out=java类输出目录 proto的输入目录包括包括proto文件
生成java类如下:
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: TCPLog.proto
public final class TCPLogOuterClass {
private TCPLogOuterClass() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
public interface TCPLogOrBuilder extends
// @@protoc_insertion_point(interface_extends:TCPLog)
com.google.protobuf.MessageOrBuilder {
/**
* <code>optional int32 total_byteps = 1;</code>
*/
boolean hasTotalByteps();
/**
* <code>optional int32 total_byteps = 1;</code>
*/
int getTotalByteps();
/**
* <code>optional int64 flow_start_time = 2;</code>
*/
boolean hasFlowStartTime();
/**
* <code>optional int64 flow_start_time = 2;</code>
*/
long getFlowStartTime();
/**
* <code>optional int64 date = 3;</code>
*/
boolean hasDate();
/**
* <code>optional int64 date = 3;</code>
*/
long getDate();
/**
* <code>optional int64 server_total_packet = 4;</code>
*/
boolean hasServerTotalPacket();
/**
* <code>optional int64 server_total_packet = 4;</code>
*/
long getServerTotalPacket();
/**
* <code>optional int64 client_total_byte = 5;</code>
*/
boolean hasClientTotalByte();
/**
* <code>optional int64 client_total_byte = 5;</code>
*/
long getClientTotalByte();
/**
* <code>optional int32 link_id = 6;</code>
*/
boolean hasLinkId();
/**
* <code>optional int32 link_id = 6;</code>
*/
int getLinkId();
/**
* <code>optional int64 total_byte = 7;</code>
*/
boolean hasTotalByte();
/**
* <code>optional int64 total_byte = 7;</code>
*/
long getTotalByte();
/**
* <code>optional int64 flow_end_time = 8;</code>
*/
boolean hasFlowEndTime();
/**
* <code>optional int64 flow_end_time = 8;</code>
*/
long getFlowEndTime();
/**
* <code>optional int32 client_port = 9;</code>
*/
boolean hasClientPort();
/**
* <code>optional int32 client_port = 9;</code>
*/
int getClientPort();
/**
* <code>optional int32 protocol = 10;</code>
*/
boolean hasProtocol();
/**
* <code>optional int32 protocol = 10;</code>
*/
int getProtocol();
/**
* <code>optional int64 total_packet = 11;</code>
*/
boolean hasTotalPacket();
/**
* <code>optional int64 total_packet = 11;</code>
*/
long getTotalPacket();
/**
* <code>optional int64 flow_duration = 12;</code>
*/
boolean hasFlowDuration();
/**
* <code>optional int64 flow_duration = 12;</code>
*/
long getFlowDuration();
/**
* <code>optional string id = 13;</code>
*/
boolean hasId();
/**
* <code>optional string id = 13;</code>
*/
java.lang.String getId();
/**
* <code>optional string id = 13;</code>
*/
com.google.protobuf.ByteString
getIdBytes();
/**
* <code>optional string server_ip_addr = 14;</code>
*/
boolean hasServerIpAddr();
/**
* <code>optional string server_ip_addr = 14;</code>
*/
java.lang.String getServerIpAddr();
/**
* <code>optional string server_ip_addr = 14;</code>
*/
com.google.protobuf.ByteString
getServerIpAddrBytes();
/**
* <code>optional string direction_mask = 15;</code>
*/
boolean hasDirectionMask();
/**
* <code>optional string direction_mask = 15;</code>
*/
java.lang.String getDirectionMask();
/**
* <code>optional string direction_mask = 15;</code>
*/
com.google.protobuf.ByteString
getDirectionMaskBytes();
/**
* <code>optional int32 app = 16;</code>
*/
boolean hasApp();
/**
* <code>optional int32 app = 16;</code>
*/
int getApp();
/**
* <code>optional int32 client_country_id = 17;</code>
*/
boolean hasClientCountryId();
/**
* <code>optional int32 client_country_id = 17;</code>
*/
int getClientCountryId();
/**
* <code>optional int32 client_netsegment_id = 18;</code>
*/
boolean hasClientNetsegmentId();
/**
* <code>optional int32 client_netsegment_id = 18;</code>
*/
int getClientNetsegmentId();
/**
* <code>optional int64 client_total_packet = 19;</code>
*/
boolean hasClientTotalPacket();
/**
* <code>optional int64 client_total_packet = 19;</code>
*/
long getClientTotalPacket();
/**
* <code>optional string client_ip_addr = 20;</code>
*/
boolean hasClientIpAddr();
/**
* <code>optional string client_ip_addr = 20;</code>
*/
java.lang.String getClientIpAddr();
/**
* <code>optional string client_ip_addr = 20;</code>
*/
com.google.protobuf.ByteString
getClientIpAddrBytes();
/**
* <code>optional int32 tcp_status = 21;</code>
*/
boolean hasTcpStatus();
/**
* <code>optional int32 tcp_status = 21;</code>
*/
int getTcpStatus();
/**
* <code>optional int32 server_country_id = 22;</code>
*/
boolean hasServerCountryId();
/**
* <code>optional int32 server_country_id = 22;</code>
*/
int getServerCountryId();
/**
* <code>optional int32 server_netsegment_id = 23;</code>
*/
boolean hasServerNetsegmentId();
/**
* <code>optional int32 server_netsegment_id = 23;</code>
*/
int getServerNetsegmentId();
/**
* <code>optional int64 avg_pkt_size = 24;</code>
*/
boolean hasAvgPktSize();
/**
* <code>optional int64 avg_pkt_size = 24;</code>
*/
long getAvgPktSize();
/**
* <code>optional int32 server_port = 25;</code>
*/
boolean hasServerPort();
/**
* <code>optional int32 server_port = 25;</code>
*/
int getServerPort();
/**
* <code>optional int64 server_total_byte = 26;</code>
*/
boolean hasServerTotalByte();
/**
* <code>optional int64 server_total_byte = 26;</code>
*/
long getServerTotalByte();
/**
* <code>optional int32 total_packetps = 27;</code>
*/
boolean hasTotalPacketps();
/**
* <code>optional int32 total_packetps = 27;</code>
*/
int getTotalPacketps();
}
/**
* Protobuf type {@code TCPLog}
*/
public static final class TCPLog extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:TCPLog)
TCPLogOrBuilder {
// Use TCPLog.newBuilder() to construct.
private TCPLog(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private TCPLog() {
totalByteps_ = 0;
flowStartTime_ = 0L;
date_ = 0L;
serverTotalPacket_ = 0L;
clientTotalByte_ = 0L;
linkId_ = 0;
totalByte_ = 0L;
flowEndTime_ = 0L;
clientPort_ = 0;
protocol_ = 0;
totalPacket_ = 0L;
flowDuration_ = 0L;
id_ = "";
serverIpAddr_ = "";
directionMask_ = "";
app_ = 0;
clientCountryId_ = 0;
clientNetsegmentId_ = 0;
clientTotalPacket_ = 0L;
clientIpAddr_ = "";
tcpStatus_ = 0;
serverCountryId_ = 0;
serverNetsegmentId_ = 0;
avgPktSize_ = 0L;
serverPort_ = 0;
serverTotalByte_ = 0L;
totalPacketps_ = 0;
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private TCPLog(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
default: {
if (!parseUnknownField(input, unknownFields,
extensionRegistry, tag)) {
done = true;
}
break;
}
case 8: {
bitField0_ |= 0x00000001;
totalByteps_ = input.readInt32();
break;
}
case 16: {
bitField0_ |= 0x00000002;
flowStartTime_ = input.readInt64();
break;
}
case 24: {
bitField0_ |= 0x00000004;
date_ = input.readInt64();
break;
}
case 32: {
bitField0_ |= 0x00000008;
serverTotalPacket_ = input.readInt64();
break;
}
case 40: {
bitField0_ |= 0x00000010;
clientTotalByte_ = input.readInt64();
break;
}
case 48: {
bitField0_ |= 0x00000020;
linkId_ = input.readInt32();
break;
}
case 56: {
bitField0_ |= 0x00000040;
totalByte_ = input.readInt64();
break;
}
case 64: {
bitField0_ |= 0x00000080;
flowEndTime_ = input.readInt64();
break;
}
case 72: {
bitField0_ |= 0x00000100;
clientPort_ = input.readInt32();
break;
}
case 80: {
bitField0_ |= 0x00000200;
protocol_ = input.readInt32();
break;
}
case 88: {
bitField0_ |= 0x00000400;
totalPacket_ = input.readInt64();
break;
}
case 96: {
bitField0_ |= 0x00000800;
flowDuration_ = input.readInt64();
break;
}
case 106: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00001000;
id_ = bs;
break;
}
case 114: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00002000;
serverIpAddr_ = bs;
break;
}
case 122: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00004000;
directionMask_ = bs;
break;
}
case 128: {
bitField0_ |= 0x00008000;
app_ = input.readInt32();
break;
}
case 136: {
bitField0_ |= 0x00010000;
clientCountryId_ = input.readInt32();
break;
}
case 144: {
bitField0_ |= 0x00020000;
clientNetsegmentId_ = input.readInt32();
break;
}
case 152: {
bitField0_ |= 0x00040000;
clientTotalPacket_ = input.readInt64();
break;
}
case 162: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00080000;
clientIpAddr_ = bs;
break;
}
case 168: {
bitField0_ |= 0x00100000;
tcpStatus_ = input.readInt32();
break;
}
case 176: {
bitField0_ |= 0x00200000;
serverCountryId_ = input.readInt32();
break;
}
case 184: {
bitField0_ |= 0x00400000;
serverNetsegmentId_ = input.readInt32();
break;
}
case 192: {
bitField0_ |= 0x00800000;
avgPktSize_ = input.readInt64();
break;
}
case 200: {
bitField0_ |= 0x01000000;
serverPort_ = input.readInt32();
break;
}
case 208: {
bitField0_ |= 0x02000000;
serverTotalByte_ = input.readInt64();
break;
}
case 216: {
bitField0_ |= 0x04000000;
totalPacketps_ = input.readInt32();
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return TCPLogOuterClass.internal_static_TCPLog_descriptor;
}
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return TCPLogOuterClass.internal_static_TCPLog_fieldAccessorTable
.ensureFieldAccessorsInitialized(
TCPLogOuterClass.TCPLog.class, TCPLogOuterClass.TCPLog.Builder.class);
}
private int bitField0_;
public static final int TOTAL_BYTEPS_FIELD_NUMBER = 1;
private int totalByteps_;
/**
* <code>optional int32 total_byteps = 1;</code>
*/
public boolean hasTotalByteps() {
return ((bitField0_ & 0x00000001) == 0x00000001);
}
/**
* <code>optional int32 total_byteps = 1;</code>
*/
public int getTotalByteps() {
return totalByteps_;
}
public static final int FLOW_START_TIME_FIELD_NUMBER = 2;
private long flowStartTime_;
/**
* <code>optional int64 flow_start_time = 2;</code>
*/
public boolean hasFlowStartTime() {
return ((bitField0_ & 0x00000002) == 0x00000002);
}
/**
* <code>optional int64 flow_start_time = 2;</code>
*/
public long getFlowStartTime() {
return flowStartTime_;
}
public static final int DATE_FIELD_NUMBER = 3;
private long date_;
/**
* <code>optional int64 date = 3;</code>
*/
public boolean hasDate() {
return ((bitField0_ & 0x00000004) == 0x00000004);
}
/**
* <code>optional int64 date = 3;</code>
*/
public long getDate() {
return date_;
}
public static final int SERVER_TOTAL_PACKET_FIELD_NUMBER = 4;
private long serverTotalPacket_;
/**
* <code>optional int64 server_total_packet = 4;</code>
*/
public boolean hasServerTotalPacket() {
return ((bitField0_ & 0x00000008) == 0x00000008);
}
/**
* <code>optional int64 server_total_packet = 4;</code>
*/
public long getServerTotalPacket() {
return serverTotalPacket_;
}
public static final int CLIENT_TOTAL_BYTE_FIELD_NUMBER = 5;
private long clientTotalByte_;
/**
* <code>optional int64 client_total_byte = 5;</code>
*/
public boolean hasClientTotalByte() {
return ((bitField0_ & 0x00000010) == 0x00000010);
}
/**
* <code>optional int64 client_total_byte = 5;</code>
*/
public long getClientTotalByte() {
return clientTotalByte_;
}
public static final int LINK_ID_FIELD_NUMBER = 6;
private int linkId_;
/**
* <code>optional int32 link_id = 6;</code>
*/
public boolean hasLinkId() {
return ((bitField0_ & 0x00000020) == 0x00000020);
}
/**
* <code>optional int32 link_id = 6;</code>
*/
public int getLinkId() {
return linkId_;
}
public static final int TOTAL_BYTE_FIELD_NUMBER = 7;
private long totalByte_;
/**
* <code>optional int64 total_byte = 7;</code>
*/
public boolean hasTotalByte() {
return ((bitField0_ & 0x00000040) == 0x00000040);
}
/**
* <code>optional int64 total_byte = 7;</code>
*/
public long getTotalByte() {
return totalByte_;
}
public static final int FLOW_END_TIME_FIELD_NUMBER = 8;
private long flowEndTime_;
/**
* <code>optional int64 flow_end_time = 8;</code>
*/
public boolean hasFlowEndTime() {
return ((bitField0_ & 0x00000080) == 0x00000080);
}
/**
* <code>optional int64 flow_end_time = 8;</code>
*/
public long getFlowEndTime() {
return flowEndTime_;
}
public static final int CLIENT_PORT_FIELD_NUMBER = 9;
private int clientPort_;
/**
* <code>optional int32 client_port = 9;</code>
*/
public boolean hasClientPort() {
return ((bitField0_ & 0x00000100) == 0x00000100);
}
/**
* <code>optional int32 client_port = 9;</code>
*/
public int getClientPort() {
return clientPort_;
}
public static final int PROTOCOL_FIELD_NUMBER = 10;
private int protocol_;
/**
* <code>optional int32 protocol = 10;</code>
*/
public boolean hasProtocol() {
return ((bitField0_ & 0x00000200) == 0x00000200);
}
/**
* <code>optional int32 protocol = 10;</code>
*/
public int getProtocol() {
return protocol_;
}
public static final int TOTAL_PACKET_FIELD_NUMBER = 11;
private long totalPacket_;
/**
* <code>optional int64 total_packet = 11;</code>
*/
public boolean hasTotalPacket() {
return ((bitField0_ & 0x00000400) == 0x00000400);
}
/**
* <code>optional int64 total_packet = 11;</code>
*/
public long getTotalPacket() {
return totalPacket_;
}
public static final int FLOW_DURATION_FIELD_NUMBER = 12;
private long flowDuration_;
/**
* <code>optional int64 flow_duration = 12;</code>
*/
public boolean hasFlowDuration() {
return ((bitField0_ & 0x00000800) == 0x00000800);
}
/**
* <code>optional int64 flow_duration = 12;</code>
*/
public long getFlowDuration() {
return flowDuration_;
}
public static final int ID_FIELD_NUMBER = 13;
private volatile java.lang.Object id_;
/**
* <code>optional string id = 13;</code>
*/
public boolean hasId() {
return ((bitField0_ & 0x00001000) == 0x00001000);
}
/**
* <code>optional string id = 13;</code>
*/
public java.lang.String getId() {
java.lang.Object ref = id_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
id_ = s;
}
return s;
}
}
/**
* <code>optional string id = 13;</code>
*/
public com.google.protobuf.ByteString
getIdBytes() {
java.lang.Object ref = id_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
id_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SERVER_IP_ADDR_FIELD_NUMBER = 14;
private volatile java.lang.Object serverIpAddr_;
/**
* <code>optional string server_ip_addr = 14;</code>
*/
public boolean hasServerIpAddr() {
return ((bitField0_ & 0x00002000) == 0x00002000);
}
/**
* <code>optional string server_ip_addr = 14;</code>
*/
public java.lang.String getServerIpAddr() {
java.lang.Object ref = serverIpAddr_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
serverIpAddr_ = s;
}
return s;
}
}
/**
* <code>optional string server_ip_addr = 14;</code>
*/
public com.google.protobuf.ByteString
getServerIpAddrBytes() {
java.lang.Object ref = serverIpAddr_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
serverIpAddr_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int DIRECTION_MASK_FIELD_NUMBER = 15;
private volatile java.lang.Object directionMask_;
/**
* <code>optional string direction_mask = 15;</code>
*/
public boolean hasDirectionMask() {
return ((bitField0_ & 0x00004000) == 0x00004000);
}
/**
* <code>optional string direction_mask = 15;</code>
*/
public java.lang.String getDirectionMask() {
java.lang.Object ref = directionMask_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
directionMask_ = s;
}
return s;
}
}
/**
* <code>optional string direction_mask = 15;</code>
*/
public com.google.protobuf.ByteString
getDirectionMaskBytes() {
java.lang.Object ref = directionMask_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
directionMask_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int APP_FIELD_NUMBER = 16;
private int app_;
/**
* <code>optional int32 app = 16;</code>
*/
public boolean hasApp() {
return ((bitField0_ & 0x00008000) == 0x00008000);
}
/**
* <code>optional int32 app = 16;</code>
*/
public int getApp() {
return app_;
}
public static final int CLIENT_COUNTRY_ID_FIELD_NUMBER = 17;
private int clientCountryId_;
/**
* <code>optional int32 client_country_id = 17;</code>
*/
public boolean hasClientCountryId() {
return ((bitField0_ & 0x00010000) == 0x00010000);
}
/**
* <code>optional int32 client_country_id = 17;</code>
*/
public int getClientCountryId() {
return clientCountryId_;
}
public static final int CLIENT_NETSEGMENT_ID_FIELD_NUMBER = 18;
private int clientNetsegmentId_;
/**
* <code>optional int32 client_netsegment_id = 18;</code>
*/
public boolean hasClientNetsegmentId() {
return ((bitField0_ & 0x00020000) == 0x00020000);
}
/**
* <code>optional int32 client_netsegment_id = 18;</code>
*/
public int getClientNetsegmentId() {
return clientNetsegmentId_;
}
public static final int CLIENT_TOTAL_PACKET_FIELD_NUMBER = 19;
private long clientTotalPacket_;
/**
* <code>optional int64 client_total_packet = 19;</code>
*/
public boolean hasClientTotalPacket() {
return ((bitField0_ & 0x00040000) == 0x00040000);
}
/**
* <code>optional int64 client_total_packet = 19;</code>
*/
public long getClientTotalPacket() {
return clientTotalPacket_;
}
public static final int CLIENT_IP_ADDR_FIELD_NUMBER = 20;
private volatile java.lang.Object clientIpAddr_;
/**
* <code>optional string client_ip_addr = 20;</code>
*/
public boolean hasClientIpAddr() {
return ((bitField0_ & 0x00080000) == 0x00080000);
}
/**
* <code>optional string client_ip_addr = 20;</code>
*/
public java.lang.String getClientIpAddr() {
java.lang.Object ref = clientIpAddr_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
clientIpAddr_ = s;
}
return s;
}
}
/**
* <code>optional string client_ip_addr = 20;</code>
*/
public com.google.protobuf.ByteString
getClientIpAddrBytes() {
java.lang.Object ref = clientIpAddr_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
clientIpAddr_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int TCP_STATUS_FIELD_NUMBER = 21;
private int tcpStatus_;
/**
* <code>optional int32 tcp_status = 21;</code>
*/
public boolean hasTcpStatus() {
return ((bitField0_ & 0x00100000) == 0x00100000);
}
/**
* <code>optional int32 tcp_status = 21;</code>
*/
public int getTcpStatus() {
return tcpStatus_;
}
public static final int SERVER_COUNTRY_ID_FIELD_NUMBER = 22;
private int serverCountryId_;
/**
* <code>optional int32 server_country_id = 22;</code>
*/
public boolean hasServerCountryId() {
return ((bitField0_ & 0x00200000) == 0x00200000);
}
/**
* <code>optional int32 server_country_id = 22;</code>
*/
public int getServerCountryId() {
return serverCountryId_;
}
public static final int SERVER_NETSEGMENT_ID_FIELD_NUMBER = 23;
private int serverNetsegmentId_;
/**
* <code>optional int32 server_netsegment_id = 23;</code>
*/
public boolean hasServerNetsegmentId() {
return ((bitField0_ & 0x00400000) == 0x00400000);
}
/**
* <code>optional int32 server_netsegment_id = 23;</code>
*/
public int getServerNetsegmentId() {
return serverNetsegmentId_;
}
public static final int AVG_PKT_SIZE_FIELD_NUMBER = 24;
private long avgPktSize_;
/**
* <code>optional int64 avg_pkt_size = 24;</code>
*/
public boolean hasAvgPktSize() {
return ((bitField0_ & 0x00800000) == 0x00800000);
}
/**
* <code>optional int64 avg_pkt_size = 24;</code>
*/
public long getAvgPktSize() {
return avgPktSize_;
}
public static final int SERVER_PORT_FIELD_NUMBER = 25;
private int serverPort_;
/**
* <code>optional int32 server_port = 25;</code>
*/
public boolean hasServerPort() {
return ((bitField0_ & 0x01000000) == 0x01000000);
}
/**
* <code>optional int32 server_port = 25;</code>
*/
public int getServerPort() {
return serverPort_;
}
public static final int SERVER_TOTAL_BYTE_FIELD_NUMBER = 26;
private long serverTotalByte_;
/**
* <code>optional int64 server_total_byte = 26;</code>
*/
public boolean hasServerTotalByte() {
return ((bitField0_ & 0x02000000) == 0x02000000);
}
/**
* <code>optional int64 server_total_byte = 26;</code>
*/
public long getServerTotalByte() {
return serverTotalByte_;
}
public static final int TOTAL_PACKETPS_FIELD_NUMBER = 27;
private int totalPacketps_;
/**
* <code>optional int32 total_packetps = 27;</code>
*/
public boolean hasTotalPacketps() {
return ((bitField0_ & 0x04000000) == 0x04000000);
}
/**
* <code>optional int32 total_packetps = 27;</code>
*/
public int getTotalPacketps() {
return totalPacketps_;
}
private byte memoizedIsInitialized = -1;
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (((bitField0_ & 0x00000001) == 0x00000001)) {
output.writeInt32(1, totalByteps_);
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
output.writeInt64(2, flowStartTime_);
}
if (((bitField0_ & 0x00000004) == 0x00000004)) {
output.writeInt64(3, date_);
}
if (((bitField0_ & 0x00000008) == 0x00000008)) {
output.writeInt64(4, serverTotalPacket_);
}
if (((bitField0_ & 0x00000010) == 0x00000010)) {
output.writeInt64(5, clientTotalByte_);
}
if (((bitField0_ & 0x00000020) == 0x00000020)) {
output.writeInt32(6, linkId_);
}
if (((bitField0_ & 0x00000040) == 0x00000040)) {
output.writeInt64(7, totalByte_);
}
if (((bitField0_ & 0x00000080) == 0x00000080)) {
output.writeInt64(8, flowEndTime_);
}
if (((bitField0_ & 0x00000100) == 0x00000100)) {
output.writeInt32(9, clientPort_);
}
if (((bitField0_ & 0x00000200) == 0x00000200)) {
output.writeInt32(10, protocol_);
}
if (((bitField0_ & 0x00000400) == 0x00000400)) {
output.writeInt64(11, totalPacket_);
}
if (((bitField0_ & 0x00000800) == 0x00000800)) {
output.writeInt64(12, flowDuration_);
}
if (((bitField0_ & 0x00001000) == 0x00001000)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 13, id_);
}
if (((bitField0_ & 0x00002000) == 0x00002000)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 14, serverIpAddr_);
}
if (((bitField0_ & 0x00004000) == 0x00004000)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 15, directionMask_);
}
if (((bitField0_ & 0x00008000) == 0x00008000)) {
output.writeInt32(16, app_);
}
if (((bitField0_ & 0x00010000) == 0x00010000)) {
output.writeInt32(17, clientCountryId_);
}
if (((bitField0_ & 0x00020000) == 0x00020000)) {
output.writeInt32(18, clientNetsegmentId_);
}
if (((bitField0_ & 0x00040000) == 0x00040000)) {
output.writeInt64(19, clientTotalPacket_);
}
if (((bitField0_ & 0x00080000) == 0x00080000)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 20, clientIpAddr_);
}
if (((bitField0_ & 0x00100000) == 0x00100000)) {
output.writeInt32(21, tcpStatus_);
}
if (((bitField0_ & 0x00200000) == 0x00200000)) {
output.writeInt32(22, serverCountryId_);
}
if (((bitField0_ & 0x00400000) == 0x00400000)) {
output.writeInt32(23, serverNetsegmentId_);
}
if (((bitField0_ & 0x00800000) == 0x00800000)) {
output.writeInt64(24, avgPktSize_);
}
if (((bitField0_ & 0x01000000) == 0x01000000)) {
output.writeInt32(25, serverPort_);
}
if (((bitField0_ & 0x02000000) == 0x02000000)) {
output.writeInt64(26, serverTotalByte_);
}
if (((bitField0_ & 0x04000000) == 0x04000000)) {
output.writeInt32(27, totalPacketps_);
}
unknownFields.writeTo(output);
}
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (((bitField0_ & 0x00000001) == 0x00000001)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(1, totalByteps_);
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(2, flowStartTime_);
}
if (((bitField0_ & 0x00000004) == 0x00000004)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(3, date_);
}
if (((bitField0_ & 0x00000008) == 0x00000008)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(4, serverTotalPacket_);
}
if (((bitField0_ & 0x00000010) == 0x00000010)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(5, clientTotalByte_);
}
if (((bitField0_ & 0x00000020) == 0x00000020)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(6, linkId_);
}
if (((bitField0_ & 0x00000040) == 0x00000040)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(7, totalByte_);
}
if (((bitField0_ & 0x00000080) == 0x00000080)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(8, flowEndTime_);
}
if (((bitField0_ & 0x00000100) == 0x00000100)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(9, clientPort_);
}
if (((bitField0_ & 0x00000200) == 0x00000200)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(10, protocol_);
}
if (((bitField0_ & 0x00000400) == 0x00000400)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(11, totalPacket_);
}
if (((bitField0_ & 0x00000800) == 0x00000800)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(12, flowDuration_);
}
if (((bitField0_ & 0x00001000) == 0x00001000)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, id_);
}
if (((bitField0_ & 0x00002000) == 0x00002000)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, serverIpAddr_);
}
if (((bitField0_ & 0x00004000) == 0x00004000)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, directionMask_);
}
if (((bitField0_ & 0x00008000) == 0x00008000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(16, app_);
}
if (((bitField0_ & 0x00010000) == 0x00010000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(17, clientCountryId_);
}
if (((bitField0_ & 0x00020000) == 0x00020000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(18, clientNetsegmentId_);
}
if (((bitField0_ & 0x00040000) == 0x00040000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(19, clientTotalPacket_);
}
if (((bitField0_ & 0x00080000) == 0x00080000)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(20, clientIpAddr_);
}
if (((bitField0_ & 0x00100000) == 0x00100000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(21, tcpStatus_);
}
if (((bitField0_ & 0x00200000) == 0x00200000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(22, serverCountryId_);
}
if (((bitField0_ & 0x00400000) == 0x00400000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(23, serverNetsegmentId_);
}
if (((bitField0_ & 0x00800000) == 0x00800000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(24, avgPktSize_);
}
if (((bitField0_ & 0x01000000) == 0x01000000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(25, serverPort_);
}
if (((bitField0_ & 0x02000000) == 0x02000000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt64Size(26, serverTotalByte_);
}
if (((bitField0_ & 0x04000000) == 0x04000000)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(27, totalPacketps_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
private static final long serialVersionUID = 0L;
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof TCPLogOuterClass.TCPLog)) {
return super.equals(obj);
}
TCPLogOuterClass.TCPLog other = (TCPLogOuterClass.TCPLog) obj;
boolean result = true;
result = result && (hasTotalByteps() == other.hasTotalByteps());
if (hasTotalByteps()) {
result = result && (getTotalByteps()
== other.getTotalByteps());
}
result = result && (hasFlowStartTime() == other.hasFlowStartTime());
if (hasFlowStartTime()) {
result = result && (getFlowStartTime()
== other.getFlowStartTime());
}
result = result && (hasDate() == other.hasDate());
if (hasDate()) {
result = result && (getDate()
== other.getDate());
}
result = result && (hasServerTotalPacket() == other.hasServerTotalPacket());
if (hasServerTotalPacket()) {
result = result && (getServerTotalPacket()
== other.getServerTotalPacket());
}
result = result && (hasClientTotalByte() == other.hasClientTotalByte());
if (hasClientTotalByte()) {
result = result && (getClientTotalByte()
== other.getClientTotalByte());
}
result = result && (hasLinkId() == other.hasLinkId());
if (hasLinkId()) {
result = result && (getLinkId()
== other.getLinkId());
}
result = result && (hasTotalByte() == other.hasTotalByte());
if (hasTotalByte()) {
result = result && (getTotalByte()
== other.getTotalByte());
}
result = result && (hasFlowEndTime() == other.hasFlowEndTime());
if (hasFlowEndTime()) {
result = result && (getFlowEndTime()
== other.getFlowEndTime());
}
result = result && (hasClientPort() == other.hasClientPort());
if (hasClientPort()) {
result = result && (getClientPort()
== other.getClientPort());
}
result = result && (hasProtocol() == other.hasProtocol());
if (hasProtocol()) {
result = result && (getProtocol()
== other.getProtocol());
}
result = result && (hasTotalPacket() == other.hasTotalPacket());
if (hasTotalPacket()) {
result = result && (getTotalPacket()
== other.getTotalPacket());
}
result = result && (hasFlowDuration() == other.hasFlowDuration());
if (hasFlowDuration()) {
result = result && (getFlowDuration()
== other.getFlowDuration());
}
result = result && (hasId() == other.hasId());
if (hasId()) {
result = result && getId()
.equals(other.getId());
}
result = result && (hasServerIpAddr() == other.hasServerIpAddr());
if (hasServerIpAddr()) {
result = result && getServerIpAddr()
.equals(other.getServerIpAddr());
}
result = result && (hasDirectionMask() == other.hasDirectionMask());
if (hasDirectionMask()) {
result = result && getDirectionMask()
.equals(other.getDirectionMask());
}
result = result && (hasApp() == other.hasApp());
if (hasApp()) {
result = result && (getApp()
== other.getApp());
}
result = result && (hasClientCountryId() == other.hasClientCountryId());
if (hasClientCountryId()) {
result = result && (getClientCountryId()
== other.getClientCountryId());
}
result = result && (hasClientNetsegmentId() == other.hasClientNetsegmentId());
if (hasClientNetsegmentId()) {
result = result && (getClientNetsegmentId()
== other.getClientNetsegmentId());
}
result = result && (hasClientTotalPacket() == other.hasClientTotalPacket());
if (hasClientTotalPacket()) {
result = result && (getClientTotalPacket()
== other.getClientTotalPacket());
}
result = result && (hasClientIpAddr() == other.hasClientIpAddr());
if (hasClientIpAddr()) {
result = result && getClientIpAddr()
.equals(other.getClientIpAddr());
}
result = result && (hasTcpStatus() == other.hasTcpStatus());
if (hasTcpStatus()) {
result = result && (getTcpStatus()
== other.getTcpStatus());
}
result = result && (hasServerCountryId() == other.hasServerCountryId());
if (hasServerCountryId()) {
result = result && (getServerCountryId()
== other.getServerCountryId());
}
result = result && (hasServerNetsegmentId() == other.hasServerNetsegmentId());
if (hasServerNetsegmentId()) {
result = result && (getServerNetsegmentId()
== other.getServerNetsegmentId());
}
result = result && (hasAvgPktSize() == other.hasAvgPktSize());
if (hasAvgPktSize()) {
result = result && (getAvgPktSize()
== other.getAvgPktSize());
}
result = result && (hasServerPort() == other.hasServerPort());
if (hasServerPort()) {
result = result && (getServerPort()
== other.getServerPort());
}
result = result && (hasServerTotalByte() == other.hasServerTotalByte());
if (hasServerTotalByte()) {
result = result && (getServerTotalByte()
== other.getServerTotalByte());
}
result = result && (hasTotalPacketps() == other.hasTotalPacketps());
if (hasTotalPacketps()) {
result = result && (getTotalPacketps()
== other.getTotalPacketps());
}
result = result && unknownFields.equals(other.unknownFields);
return result;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
if (hasTotalByteps()) {
hash = (37 * hash) + TOTAL_BYTEPS_FIELD_NUMBER;
hash = (53 * hash) + getTotalByteps();
}
if (hasFlowStartTime()) {
hash = (37 * hash) + FLOW_START_TIME_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getFlowStartTime());
}
if (hasDate()) {
hash = (37 * hash) + DATE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getDate());
}
if (hasServerTotalPacket()) {
hash = (37 * hash) + SERVER_TOTAL_PACKET_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getServerTotalPacket());
}
if (hasClientTotalByte()) {
hash = (37 * hash) + CLIENT_TOTAL_BYTE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getClientTotalByte());
}
if (hasLinkId()) {
hash = (37 * hash) + LINK_ID_FIELD_NUMBER;
hash = (53 * hash) + getLinkId();
}
if (hasTotalByte()) {
hash = (37 * hash) + TOTAL_BYTE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getTotalByte());
}
if (hasFlowEndTime()) {
hash = (37 * hash) + FLOW_END_TIME_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getFlowEndTime());
}
if (hasClientPort()) {
hash = (37 * hash) + CLIENT_PORT_FIELD_NUMBER;
hash = (53 * hash) + getClientPort();
}
if (hasProtocol()) {
hash = (37 * hash) + PROTOCOL_FIELD_NUMBER;
hash = (53 * hash) + getProtocol();
}
if (hasTotalPacket()) {
hash = (37 * hash) + TOTAL_PACKET_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getTotalPacket());
}
if (hasFlowDuration()) {
hash = (37 * hash) + FLOW_DURATION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getFlowDuration());
}
if (hasId()) {
hash = (37 * hash) + ID_FIELD_NUMBER;
hash = (53 * hash) + getId().hashCode();
}
if (hasServerIpAddr()) {
hash = (37 * hash) + SERVER_IP_ADDR_FIELD_NUMBER;
hash = (53 * hash) + getServerIpAddr().hashCode();
}
if (hasDirectionMask()) {
hash = (37 * hash) + DIRECTION_MASK_FIELD_NUMBER;
hash = (53 * hash) + getDirectionMask().hashCode();
}
if (hasApp()) {
hash = (37 * hash) + APP_FIELD_NUMBER;
hash = (53 * hash) + getApp();
}
if (hasClientCountryId()) {
hash = (37 * hash) + CLIENT_COUNTRY_ID_FIELD_NUMBER;
hash = (53 * hash) + getClientCountryId();
}
if (hasClientNetsegmentId()) {
hash = (37 * hash) + CLIENT_NETSEGMENT_ID_FIELD_NUMBER;
hash = (53 * hash) + getClientNetsegmentId();
}
if (hasClientTotalPacket()) {
hash = (37 * hash) + CLIENT_TOTAL_PACKET_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getClientTotalPacket());
}
if (hasClientIpAddr()) {
hash = (37 * hash) + CLIENT_IP_ADDR_FIELD_NUMBER;
hash = (53 * hash) + getClientIpAddr().hashCode();
}
if (hasTcpStatus()) {
hash = (37 * hash) + TCP_STATUS_FIELD_NUMBER;
hash = (53 * hash) + getTcpStatus();
}
if (hasServerCountryId()) {
hash = (37 * hash) + SERVER_COUNTRY_ID_FIELD_NUMBER;
hash = (53 * hash) + getServerCountryId();
}
if (hasServerNetsegmentId()) {
hash = (37 * hash) + SERVER_NETSEGMENT_ID_FIELD_NUMBER;
hash = (53 * hash) + getServerNetsegmentId();
}
if (hasAvgPktSize()) {
hash = (37 * hash) + AVG_PKT_SIZE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getAvgPktSize());
}
if (hasServerPort()) {
hash = (37 * hash) + SERVER_PORT_FIELD_NUMBER;
hash = (53 * hash) + getServerPort();
}
if (hasServerTotalByte()) {
hash = (37 * hash) + SERVER_TOTAL_BYTE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
getServerTotalByte());
}
if (hasTotalPacketps()) {
hash = (37 * hash) + TOTAL_PACKETPS_FIELD_NUMBER;
hash = (53 * hash) + getTotalPacketps();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static TCPLogOuterClass.TCPLog parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static TCPLogOuterClass.TCPLog parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static TCPLogOuterClass.TCPLog parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static TCPLogOuterClass.TCPLog parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static TCPLogOuterClass.TCPLog parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static TCPLogOuterClass.TCPLog parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static TCPLogOuterClass.TCPLog parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static TCPLogOuterClass.TCPLog parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static TCPLogOuterClass.TCPLog parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static TCPLogOuterClass.TCPLog parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static TCPLogOuterClass.TCPLog parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static TCPLogOuterClass.TCPLog parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(TCPLogOuterClass.TCPLog prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code TCPLog}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:TCPLog)
TCPLogOuterClass.TCPLogOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return TCPLogOuterClass.internal_static_TCPLog_descriptor;
}
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return TCPLogOuterClass.internal_static_TCPLog_fieldAccessorTable
.ensureFieldAccessorsInitialized(
TCPLogOuterClass.TCPLog.class, TCPLogOuterClass.TCPLog.Builder.class);
}
// Construct using TCPLogOuterClass.TCPLog.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
public Builder clear() {
super.clear();
totalByteps_ = 0;
bitField0_ = (bitField0_ & ~0x00000001);
flowStartTime_ = 0L;
bitField0_ = (bitField0_ & ~0x00000002);
date_ = 0L;
bitField0_ = (bitField0_ & ~0x00000004);
serverTotalPacket_ = 0L;
bitField0_ = (bitField0_ & ~0x00000008);
clientTotalByte_ = 0L;
bitField0_ = (bitField0_ & ~0x00000010);
linkId_ = 0;
bitField0_ = (bitField0_ & ~0x00000020);
totalByte_ = 0L;
bitField0_ = (bitField0_ & ~0x00000040);
flowEndTime_ = 0L;
bitField0_ = (bitField0_ & ~0x00000080);
clientPort_ = 0;
bitField0_ = (bitField0_ & ~0x00000100);
protocol_ = 0;
bitField0_ = (bitField0_ & ~0x00000200);
totalPacket_ = 0L;
bitField0_ = (bitField0_ & ~0x00000400);
flowDuration_ = 0L;
bitField0_ = (bitField0_ & ~0x00000800);
id_ = "";
bitField0_ = (bitField0_ & ~0x00001000);
serverIpAddr_ = "";
bitField0_ = (bitField0_ & ~0x00002000);
directionMask_ = "";
bitField0_ = (bitField0_ & ~0x00004000);
app_ = 0;
bitField0_ = (bitField0_ & ~0x00008000);
clientCountryId_ = 0;
bitField0_ = (bitField0_ & ~0x00010000);
clientNetsegmentId_ = 0;
bitField0_ = (bitField0_ & ~0x00020000);
clientTotalPacket_ = 0L;
bitField0_ = (bitField0_ & ~0x00040000);
clientIpAddr_ = "";
bitField0_ = (bitField0_ & ~0x00080000);
tcpStatus_ = 0;
bitField0_ = (bitField0_ & ~0x00100000);
serverCountryId_ = 0;
bitField0_ = (bitField0_ & ~0x00200000);
serverNetsegmentId_ = 0;
bitField0_ = (bitField0_ & ~0x00400000);
avgPktSize_ = 0L;
bitField0_ = (bitField0_ & ~0x00800000);
serverPort_ = 0;
bitField0_ = (bitField0_ & ~0x01000000);
serverTotalByte_ = 0L;
bitField0_ = (bitField0_ & ~0x02000000);
totalPacketps_ = 0;
bitField0_ = (bitField0_ & ~0x04000000);
return this;
}
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return TCPLogOuterClass.internal_static_TCPLog_descriptor;
}
public TCPLogOuterClass.TCPLog getDefaultInstanceForType() {
return TCPLogOuterClass.TCPLog.getDefaultInstance();
}
public TCPLogOuterClass.TCPLog build() {
TCPLogOuterClass.TCPLog result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
public TCPLogOuterClass.TCPLog buildPartial() {
TCPLogOuterClass.TCPLog result = new TCPLogOuterClass.TCPLog(this);
int from_bitField0_ = bitField0_;
int to_bitField0_ = 0;
if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
to_bitField0_ |= 0x00000001;
}
result.totalByteps_ = totalByteps_;
if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
to_bitField0_ |= 0x00000002;
}
result.flowStartTime_ = flowStartTime_;
if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
to_bitField0_ |= 0x00000004;
}
result.date_ = date_;
if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
to_bitField0_ |= 0x00000008;
}
result.serverTotalPacket_ = serverTotalPacket_;
if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
to_bitField0_ |= 0x00000010;
}
result.clientTotalByte_ = clientTotalByte_;
if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
to_bitField0_ |= 0x00000020;
}
result.linkId_ = linkId_;
if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
to_bitField0_ |= 0x00000040;
}
result.totalByte_ = totalByte_;
if (((from_bitField0_ & 0x00000080) == 0x00000080)) {
to_bitField0_ |= 0x00000080;
}
result.flowEndTime_ = flowEndTime_;
if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
to_bitField0_ |= 0x00000100;
}
result.clientPort_ = clientPort_;
if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
to_bitField0_ |= 0x00000200;
}
result.protocol_ = protocol_;
if (((from_bitField0_ & 0x00000400) == 0x00000400)) {
to_bitField0_ |= 0x00000400;
}
result.totalPacket_ = totalPacket_;
if (((from_bitField0_ & 0x00000800) == 0x00000800)) {
to_bitField0_ |= 0x00000800;
}
result.flowDuration_ = flowDuration_;
if (((from_bitField0_ & 0x00001000) == 0x00001000)) {
to_bitField0_ |= 0x00001000;
}
result.id_ = id_;
if (((from_bitField0_ & 0x00002000) == 0x00002000)) {
to_bitField0_ |= 0x00002000;
}
result.serverIpAddr_ = serverIpAddr_;
if (((from_bitField0_ & 0x00004000) == 0x00004000)) {
to_bitField0_ |= 0x00004000;
}
result.directionMask_ = directionMask_;
if (((from_bitField0_ & 0x00008000) == 0x00008000)) {
to_bitField0_ |= 0x00008000;
}
result.app_ = app_;
if (((from_bitField0_ & 0x00010000) == 0x00010000)) {
to_bitField0_ |= 0x00010000;
}
result.clientCountryId_ = clientCountryId_;
if (((from_bitField0_ & 0x00020000) == 0x00020000)) {
to_bitField0_ |= 0x00020000;
}
result.clientNetsegmentId_ = clientNetsegmentId_;
if (((from_bitField0_ & 0x00040000) == 0x00040000)) {
to_bitField0_ |= 0x00040000;
}
result.clientTotalPacket_ = clientTotalPacket_;
if (((from_bitField0_ & 0x00080000) == 0x00080000)) {
to_bitField0_ |= 0x00080000;
}
result.clientIpAddr_ = clientIpAddr_;
if (((from_bitField0_ & 0x00100000) == 0x00100000)) {
to_bitField0_ |= 0x00100000;
}
result.tcpStatus_ = tcpStatus_;
if (((from_bitField0_ & 0x00200000) == 0x00200000)) {
to_bitField0_ |= 0x00200000;
}
result.serverCountryId_ = serverCountryId_;
if (((from_bitField0_ & 0x00400000) == 0x00400000)) {
to_bitField0_ |= 0x00400000;
}
result.serverNetsegmentId_ = serverNetsegmentId_;
if (((from_bitField0_ & 0x00800000) == 0x00800000)) {
to_bitField0_ |= 0x00800000;
}
result.avgPktSize_ = avgPktSize_;
if (((from_bitField0_ & 0x01000000) == 0x01000000)) {
to_bitField0_ |= 0x01000000;
}
result.serverPort_ = serverPort_;
if (((from_bitField0_ & 0x02000000) == 0x02000000)) {
to_bitField0_ |= 0x02000000;
}
result.serverTotalByte_ = serverTotalByte_;
if (((from_bitField0_ & 0x04000000) == 0x04000000)) {
to_bitField0_ |= 0x04000000;
}
result.totalPacketps_ = totalPacketps_;
result.bitField0_ = to_bitField0_;
onBuilt();
return result;
}
public Builder clone() {
return (Builder) super.clone();
}
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) {
return (Builder) super.setField(field, value);
}
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return (Builder) super.clearField(field);
}
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return (Builder) super.clearOneof(oneof);
}
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, Object value) {
return (Builder) super.setRepeatedField(field, index, value);
}
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
Object value) {
return (Builder) super.addRepeatedField(field, value);
}
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof TCPLogOuterClass.TCPLog) {
return mergeFrom((TCPLogOuterClass.TCPLog)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(TCPLogOuterClass.TCPLog other) {
if (other == TCPLogOuterClass.TCPLog.getDefaultInstance()) return this;
if (other.hasTotalByteps()) {
setTotalByteps(other.getTotalByteps());
}
if (other.hasFlowStartTime()) {
setFlowStartTime(other.getFlowStartTime());
}
if (other.hasDate()) {
setDate(other.getDate());
}
if (other.hasServerTotalPacket()) {
setServerTotalPacket(other.getServerTotalPacket());
}
if (other.hasClientTotalByte()) {
setClientTotalByte(other.getClientTotalByte());
}
if (other.hasLinkId()) {
setLinkId(other.getLinkId());
}
if (other.hasTotalByte()) {
setTotalByte(other.getTotalByte());
}
if (other.hasFlowEndTime()) {
setFlowEndTime(other.getFlowEndTime());
}
if (other.hasClientPort()) {
setClientPort(other.getClientPort());
}
if (other.hasProtocol()) {
setProtocol(other.getProtocol());
}
if (other.hasTotalPacket()) {
setTotalPacket(other.getTotalPacket());
}
if (other.hasFlowDuration()) {
setFlowDuration(other.getFlowDuration());
}
if (other.hasId()) {
bitField0_ |= 0x00001000;
id_ = other.id_;
onChanged();
}
if (other.hasServerIpAddr()) {
bitField0_ |= 0x00002000;
serverIpAddr_ = other.serverIpAddr_;
onChanged();
}
if (other.hasDirectionMask()) {
bitField0_ |= 0x00004000;
directionMask_ = other.directionMask_;
onChanged();
}
if (other.hasApp()) {
setApp(other.getApp());
}
if (other.hasClientCountryId()) {
setClientCountryId(other.getClientCountryId());
}
if (other.hasClientNetsegmentId()) {
setClientNetsegmentId(other.getClientNetsegmentId());
}
if (other.hasClientTotalPacket()) {
setClientTotalPacket(other.getClientTotalPacket());
}
if (other.hasClientIpAddr()) {
bitField0_ |= 0x00080000;
clientIpAddr_ = other.clientIpAddr_;
onChanged();
}
if (other.hasTcpStatus()) {
setTcpStatus(other.getTcpStatus());
}
if (other.hasServerCountryId()) {
setServerCountryId(other.getServer