net.fs.rudp.SendRecord Java Examples

The following examples show how to use net.fs.rudp.SendRecord. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: AckListMessage.java    From NSS with Apache License 2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
public AckListMessage(long connId,ArrayList ackList,int lastRead,
		HashMap<Integer, SendRecord> sendRecordTable,int timeId,
		int connectId,int clientId){
	this.clientId=clientId;
	this.connectId=connectId;
	this.ackList=ackList;
	this.lastRead=lastRead;
	int len1=4+4+10+4*ackList.size();
	dpData=new byte[len1+24+9];
	sType=MessageType.sType_AckListMessage;
	ByteShortConvert.toByteArray(ver, dpData, 0);  //add: ver
	ByteShortConvert.toByteArray(sType, dpData, 2);  //add: service type
	ByteIntConvert.toByteArray(connectId, dpData, 4); //add: sequence
	ByteIntConvert.toByteArray(clientId, dpData, 8); //add: sequence
	
	ByteIntConvert.toByteArray(lastRead, dpData, 4+8);
	//dpData[8]=(byte) ackList.size();
	ByteShortConvert.toByteArray((short) ackList.size(), dpData, 8+8);  //add: service type
	for(int i=0;i<ackList.size();i++){
		int sequence=(Integer)ackList.get(i);
		ByteIntConvert.toByteArray(sequence, dpData, 10+4*i+8);  //add: sequence
		////#MLog.println("发送确认 "+sequence);
	}

	int u1=timeId-2;
	ByteIntConvert.toByteArray(u1, dpData,len1+8);
	SendRecord r1=sendRecordTable.get(u1);
	int s1=0;
	if(r1!=null){
		s1=r1.getSendSize();
	}
	ByteIntConvert.toByteArray(s1, dpData, len1+4+8);

	int u2=timeId-1;
	ByteIntConvert.toByteArray(u2, dpData,len1+8+8);
	SendRecord r2=sendRecordTable.get(u2);
	int s2=0;
	if(r2!=null){
		s2=r2.getSendSize();
	}
	ByteIntConvert.toByteArray(s2, dpData, len1+12+8);

	int u3=timeId;
	ByteIntConvert.toByteArray(u3, dpData,len1+16+8);
	SendRecord r3=sendRecordTable.get(u3);
	int s3=0;
	if(r3!=null){
		s3=r3.getSendSize();
	}
	ByteIntConvert.toByteArray(s3, dpData, len1+20+8);

	dp=new DatagramPacket(dpData,dpData.length);
	
}
 
Example #2
Source File: AckListMessage.java    From finalspeed-91yun with GNU General Public License v2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
public AckListMessage(long connId,ArrayList ackList,int lastRead,
		HashMap<Integer, SendRecord> sendRecordTable,int timeId,
		int connectId,int clientId){
	this.clientId=clientId;
	this.connectId=connectId;
	this.ackList=ackList;
	this.lastRead=lastRead;
	int len1=4+4+10+4*ackList.size();
	dpData=new byte[len1+24+9];
	sType=MessageType.sType_AckListMessage;
	ByteShortConvert.toByteArray(ver, dpData, 0);  //add: ver
	ByteShortConvert.toByteArray(sType, dpData, 2);  //add: service type
	ByteIntConvert.toByteArray(connectId, dpData, 4); //add: sequence
	ByteIntConvert.toByteArray(clientId, dpData, 8); //add: sequence
	
	ByteIntConvert.toByteArray(lastRead, dpData, 4+8);
	//dpData[8]=(byte) ackList.size();
	ByteShortConvert.toByteArray((short) ackList.size(), dpData, 8+8);  //add: service type
	for(int i=0;i<ackList.size();i++){
		int sequence=(Integer)ackList.get(i);
		ByteIntConvert.toByteArray(sequence, dpData, 10+4*i+8);  //add: sequence
		////#MLog.println("发送确认 "+sequence);
	}

	int u1=timeId-2;
	ByteIntConvert.toByteArray(u1, dpData,len1+8);
	SendRecord r1=sendRecordTable.get(u1);
	int s1=0;
	if(r1!=null){
		s1=r1.getSendSize();
	}
	ByteIntConvert.toByteArray(s1, dpData, len1+4+8);

	int u2=timeId-1;
	ByteIntConvert.toByteArray(u2, dpData,len1+8+8);
	SendRecord r2=sendRecordTable.get(u2);
	int s2=0;
	if(r2!=null){
		s2=r2.getSendSize();
	}
	ByteIntConvert.toByteArray(s2, dpData, len1+12+8);

	int u3=timeId;
	ByteIntConvert.toByteArray(u3, dpData,len1+16+8);
	SendRecord r3=sendRecordTable.get(u3);
	int s3=0;
	if(r3!=null){
		s3=r3.getSendSize();
	}
	ByteIntConvert.toByteArray(s3, dpData, len1+20+8);

	dp=new DatagramPacket(dpData,dpData.length);
	
}
 
Example #3
Source File: AckListMessage.java    From finalspeed with GNU General Public License v2.0 4 votes vote down vote up
@SuppressWarnings("unchecked")
public AckListMessage(long connId, ArrayList ackList, int lastRead,
                      HashMap<Integer, SendRecord> sendRecordTable, int timeId,
                      int connectId, int clientId) {
    this.clientId = clientId;
    this.connectId = connectId;
    this.ackList = ackList;
    this.lastRead = lastRead;
    int len1 = 4 + 4 + 10 + 4 * ackList.size();
    dpData = new byte[len1 + 24 + 9];
    sType = MessageType.sType_AckListMessage;
    ByteShortConvert.toByteArray(ver, dpData, 0);  //add: ver
    ByteShortConvert.toByteArray(sType, dpData, 2);  //add: service type
    ByteIntConvert.toByteArray(connectId, dpData, 4); //add: sequence
    ByteIntConvert.toByteArray(clientId, dpData, 8); //add: sequence

    ByteIntConvert.toByteArray(lastRead, dpData, 4 + 8);
    //dpData[8]=(byte) ackList.size();
    ByteShortConvert.toByteArray((short) ackList.size(), dpData, 8 + 8);  //add: service type
    for (int i = 0; i < ackList.size(); i++) {
        int sequence = (Integer) ackList.get(i);
        ByteIntConvert.toByteArray(sequence, dpData, 10 + 4 * i + 8);  //add: sequence
        ////#MLog.println("发送确认 "+sequence);
    }

    int u1 = timeId - 2;
    ByteIntConvert.toByteArray(u1, dpData, len1 + 8);
    SendRecord r1 = sendRecordTable.get(u1);
    int s1 = 0;
    if (r1 != null) {
        s1 = r1.getSendSize();
    }
    ByteIntConvert.toByteArray(s1, dpData, len1 + 4 + 8);

    int u2 = timeId - 1;
    ByteIntConvert.toByteArray(u2, dpData, len1 + 8 + 8);
    SendRecord r2 = sendRecordTable.get(u2);
    int s2 = 0;
    if (r2 != null) {
        s2 = r2.getSendSize();
    }
    ByteIntConvert.toByteArray(s2, dpData, len1 + 12 + 8);

    ByteIntConvert.toByteArray(timeId, dpData, len1 + 16 + 8);
    SendRecord r3 = sendRecordTable.get(timeId);
    int s3 = 0;
    if (r3 != null) {
        s3 = r3.getSendSize();
    }
    ByteIntConvert.toByteArray(s3, dpData, len1 + 20 + 8);

    dp = new DatagramPacket(dpData, dpData.length);

}