public class ChatService implements Runnable { private static final
Map service=new HashMap();//会议室服务,系统中的当前会议室存放到该表集合中 private static
final int maxServices=10;//可以同时开的最大会议室数 private static final
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd"); private final
List msgs;//聊天信息Chat private final List
users;//在线用户,ChatUser private final List
talkers;//排队发言人数Talker private final List manager;//会议室管理员 private
Talker currentTalker;//当前发言人 public ChatService() { this.msgs=new
ArrayList(); this.users=new ArrayList(); this.talkers=new
ArrayList(); this.manager=new
ArrayList(); this.maxUser=1000;//最大1000人同时 this.interval=1000*60*5;//5分钟以前的信息 } } 会议发言信息也需要封装成一个类,表示发言人、接收人、内容、发言时间、类型等,大致如下面的Chat类:
public class Chat { private String cid; private String
sender; private String reciver; private String content; private
Date vdate; private Integer types; private Integer
status; } 还有表示参加会议的人的信息,包括参会人名称、IP地址、状态等,如下面的ChatUser类所示:
public class ChatUser { private String ip; private String
port; private String userName; private Date
lastAccessTime; private Integer
status; } 另外还需要一个表示当前发言人的Talker类,表示当前的发言人,发言开始时间,发言预计结束时间等。