forked from KNEMC/KLALB
KLALB完全大重写,代码规范了,可以当作网络库使用
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package org.kne.cloud.network.klalb;
|
||||
|
||||
import java.io.DataInput;
|
||||
import java.io.DataOutput;
|
||||
import java.io.IOException;
|
||||
|
||||
public class DATATPacket extends KLALBPacket {
|
||||
@Override
|
||||
public long getLength() {
|
||||
return super.getLength()+18+data.length;
|
||||
}
|
||||
|
||||
private int sport,dport;
|
||||
private long number;
|
||||
private byte[]data;
|
||||
public DATATPacket(int sport,int dport,long number,byte[]data) {
|
||||
super(DATAT);
|
||||
this.sport=sport;
|
||||
this.dport=dport;
|
||||
this.number=number;
|
||||
this.data=data;
|
||||
}
|
||||
|
||||
public DATATPacket() {
|
||||
super();
|
||||
}
|
||||
|
||||
public int getSport() {
|
||||
return sport;
|
||||
}
|
||||
|
||||
public int getDport() {
|
||||
return dport;
|
||||
}
|
||||
|
||||
public long getNumber() {
|
||||
return number;
|
||||
}
|
||||
|
||||
public byte[] getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "DATAT "+sport+"->"+dport+" "+number+"["+data.length+"]";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void writeToStream(DataOutput dto) throws IOException {
|
||||
super.writeToStream(dto);
|
||||
dto.writeInt(sport);
|
||||
dto.writeInt(dport);
|
||||
dto.writeLong(number);
|
||||
dto.writeChar(data.length);
|
||||
dto.write(data);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void readFromStream(DataInput din) throws IOException {
|
||||
super.readFromStream(din);
|
||||
sport=din.readInt();
|
||||
dport=din.readInt();
|
||||
number=din.readLong();
|
||||
data=new byte[din.readChar()];
|
||||
din.readFully(data);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user