package com.cgcl.cloudesk.manage.packet; import java.util.HashMap; import java.util.Map; import com.cgcl.cloudesk.manage.config.PacketConfig; import com.cgcl.cloudesk.manage.util.Serializer; public class GetUserDirRspPacket extends PacketBase{ private Map<String , String> namePathPair; int packetLen = 0; public GetUserDirRspPacket() { super(PacketConfig.kGetUserDirPacketType, PacketConfig.kAuthorizeModuleId); namePathPair = new HashMap<String, String>(); } public Map<String , String> getNamePathPair() { return namePathPair; } public int deserialize(byte[] buf, int offset) { int length = super.deserialize(buf, offset); int mapSize; mapSize = Serializer.deserializeInt(buf, offset + length); length += 4; for(int i = 0; i < mapSize ; i ++) { String dirName = Serializer.deserializeString(buf, offset + length); length += Serializer.length(dirName); //length += Serializer.deserializeInt(buf, offset + length) + 4; String path = Serializer.deserializeString(buf, offset + length); length += Serializer.length(path); //length += Serializer.deserializeInt(buf, offset + length) + 4; namePathPair.put(dirName, path); } packetLen = length; return length; } public int length() { return packetLen; } }