package com.cgcl.cloudesk.manage.packet;
import com.cgcl.cloudesk.manage.com.VUEList;
import com.cgcl.cloudesk.manage.config.PacketConfig;
import com.cgcl.cloudesk.manage.util.Serializer;
public class WorksetInfoRspPacket extends PacketBase {
VUEList worksetList = null;
public WorksetInfoRspPacket()
{
super(PacketConfig.kWorksetInfoRspPacketType, PacketConfig.kAuthorizeModuleId);
worksetList = new VUEList();
}
public WorksetInfoRspPacket(VUEList worksetList)
{
super(PacketConfig.kWorksetInfoRspPacketType, PacketConfig.kAuthorizeModuleId);
this.worksetList = worksetList;
}
public VUEList getWorksetList()
{
return worksetList;
}
public void setWorksetList(VUEList worksetList)
{
this.worksetList = worksetList;
}
public int deserialize(byte buf[], int offset)
{
int length = super.deserialize(buf, offset);
int worksetNum = Serializer.deserializeInt(buf, offset + length);
System.out.println("worksetNum : " + worksetNum);
length += 4;
if( worksetNum != 0)
{
for(int i = 0 ; i < worksetNum ; i++)
{
String worksetItem = Serializer.deserializeString(buf, offset + length);
worksetList.insert(worksetItem);
length += Serializer.length(worksetItem);
}
}
return length;
}
public int serialize(byte buf[], int offset)
{
int length = super.serialize(buf, offset);
if( worksetList != null)
{
length += Serializer.serialize(buf, offset + length, worksetList.size());
for(int i = 0 ; i < worksetList.size() ; i++)
{
length += Serializer.serialize(buf, offset + length, worksetList.get(i));
}
}
else
{
length += Serializer.serialize(buf, offset + length, 0);
}
return length;
}
public int length()
{
int length = super.length();
length += 4;
for(int i = 0 ; i < worksetList.size() ; i++)
{
length += Serializer.length(worksetList.get(i));
}
return length;
}
}