JML

net.sf.jqql.packets.in
Class SearchUserReplyPacket

java.lang.Object
  extended by net.sf.jqql.packets.Packet
      extended by net.sf.jqql.packets.InPacket
          extended by net.sf.jqql.packets.BasicInPacket
              extended by net.sf.jqql.packets.in.SearchUserReplyPacket

public class SearchUserReplyPacket
extends BasicInPacket

 reply packet of search online user, format is
 1. header
 2. has two forms
    first is searched user
        user data separated by 0x1F, thereinto, a user field divide into 4 field,  
        separated by 0x1E, 4 field is
        i. user QQ number's string form
        ii. user nickname
        iii. user's area
        iiii. user face number
    seceond is no more matching, means this search all matching
        i. sring "-1"
 3. tail
     
 搜索在线用户的回复包,格式为
 1. 头部
 2. 有两种形式
    第一种为搜索到了用户
       以0x1F相隔的用户数据,其中,一个用户的数据分4个域,域之间用0x1E相隔,四个域为
       i.   用户QQ号的字符串形式
    ii.  用户昵称
    iii. 用户所在地区
    iv.  用户的头像号码
    第二种是没有更多的匹配了,表示本次搜索的全部匹配已取得
    i. 字符串"-1"
 3. 尾部
 

Author:
luma

Field Summary
 boolean finished
           
 List<UserInfo> users
           
 
Fields inherited from class net.sf.jqql.packets.Packet
bodyBuf, bodyDecrypted, command, crypter, ds, duplicated, header, log, sequence, source, user
 
Constructor Summary
SearchUserReplyPacket(ByteBuffer buf, int length, QQUser user)
          constructed function 构造函数
 
Method Summary
 String getPacketName()
           
protected  void parseBody(ByteBuffer buf)
          parse packet body, from begin position of buf 解析包体,从buf的开头位置解析起
 
Methods inherited from class net.sf.jqql.packets.BasicInPacket
decryptBody, encryptBody, getBodyBytes, getCryptographStart, getFamily, getHeadLength, getLength, getTailLength, parseHeader, parseTail, putBody, putHead, putTail, toString
 
Methods inherited from class net.sf.jqql.packets.InPacket
validateHeader
 
Methods inherited from class net.sf.jqql.packets.Packet
dump, equals, getCommand, getHeader, getSequence, getSource, hash, hashCode, isDuplicated, setDuplicated, setHeader, setSequence
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

users

public List<UserInfo> users

finished

public boolean finished
Constructor Detail

SearchUserReplyPacket

public SearchUserReplyPacket(ByteBuffer buf,
                             int length,
                             QQUser user)
                      throws PacketParseException
constructed function 构造函数

Parameters:
buf - 缓冲区 // buffer
length - 包长度 // packet length
Throws:
PacketParseException - 解析错误 // parse error
Method Detail

getPacketName

public String getPacketName()
Overrides:
getPacketName in class BasicInPacket
Returns:
descriptive name of packet 包的描述性名称

parseBody

protected void parseBody(ByteBuffer buf)
                  throws PacketParseException
Description copied from class: Packet
parse packet body, from begin position of buf 解析包体,从buf的开头位置解析起

Specified by:
parseBody in class Packet
Parameters:
buf - ByteBuffer
Throws:
PacketParseException - if parse error 如果解析出错

JML