New file |
| | |
| | | package com.dy.common.mw.channel.tcp; |
| | | |
| | | public class PrefixedDataAvailableStatus { |
| | | |
| | | public final static Integer status_rubbish = 0 ;//垃圾数据 |
| | | public final static Integer status_break = 1 ;//断包 |
| | | public final static Integer status_adjoin = 2 ;//粘包 |
| | | public final static Integer status_complete = 3 ;//不断不粘 |
| | | |
| | | private Integer status ; |
| | | private Integer dataLen ; |
| | | public String protocolName; |
| | | public Short protocolVersion; |
| | | |
| | | public PrefixedDataAvailableStatus(){ |
| | | status = null ; |
| | | dataLen = null ; |
| | | } |
| | | |
| | | /** |
| | | * 垃圾数据 |
| | | * @param dataLen 数据长度 |
| | | * @return 状态 |
| | | */ |
| | | @SuppressWarnings("unused") |
| | | public PrefixedDataAvailableStatus rubbish(Integer dataLen){ |
| | | this.status = status_rubbish ; |
| | | this.dataLen = dataLen ; |
| | | return this ; |
| | | } |
| | | |
| | | /** |
| | | * 发生断包 |
| | | * @return 状态 |
| | | */ |
| | | @SuppressWarnings("unused") |
| | | public PrefixedDataAvailableStatus breaked(){ |
| | | this.status = status_break ; |
| | | this.dataLen = null ; |
| | | return this ; |
| | | } |
| | | |
| | | /** |
| | | * 发生粘包 |
| | | * @param dataLen 数据长度 |
| | | * @return 状态 |
| | | */ |
| | | @SuppressWarnings("unused") |
| | | public PrefixedDataAvailableStatus adjoined(Integer dataLen, String protocolName, Short protocolVersion){ |
| | | this.status = status_adjoin ; |
| | | this.dataLen = dataLen ; |
| | | this.protocolName = protocolName ; |
| | | this.protocolVersion = protocolVersion ; |
| | | return this ; |
| | | } |
| | | |
| | | /** |
| | | * 不断包不粘包,数据正好收全 |
| | | * @param dataLen 数据长度 |
| | | * @return 状态 |
| | | */ |
| | | @SuppressWarnings("unused") |
| | | public PrefixedDataAvailableStatus completed(Integer dataLen, String protocolName, Short protocolVersion){ |
| | | this.status = status_complete ; |
| | | this.dataLen = dataLen ; |
| | | this.protocolName = protocolName ; |
| | | this.protocolVersion = protocolVersion ; |
| | | return this ; |
| | | } |
| | | |
| | | /** |
| | | * 是否垃圾数据 |
| | | * @return 状态 |
| | | */ |
| | | public boolean isRubbish(){ |
| | | return this.status.intValue() == status_rubbish.intValue(); |
| | | } |
| | | /** |
| | | * 是否断包 |
| | | * @return 状态 |
| | | */ |
| | | public boolean isBreaked(){ |
| | | return this.status.intValue() == status_break.intValue(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 是否粘包 |
| | | * @return 是否粘包 |
| | | */ |
| | | public boolean isAdjoined(){ |
| | | return this.status.intValue() == status_adjoin.intValue(); |
| | | } |
| | | |
| | | /** |
| | | * 是否不断不粘 |
| | | * @return 是否不断不粘 |
| | | */ |
| | | public boolean isCompleted(){ |
| | | return this.status.intValue() == status_complete.intValue(); |
| | | } |
| | | |
| | | /** |
| | | * 返回数据长度 |
| | | * @return 数据长度 |
| | | */ |
| | | public Integer getDataLen(){ |
| | | return this.dataLen ; |
| | | } |
| | | |
| | | } |