?? chatagent.java
字號:
/* * @(#) ChatAgent.java * Copyright 2004 HWStudio. All rights reserved. */package hws.item.smart.utility.chat;//導入自定義Java類庫import hws.item.smart.misc.XMLConfig;//導入第三方Java類庫import org.apache.xmlrpc.XmlRpc;import org.apache.xmlrpc.WebServer;/** * 聊天代理 * * @version 0.1 2005-08-26 * @author Hwerz */public class ChatAgent extends Object { /*------------------------------------------------------------------------* * 屬性定義 * *------------------------------------------------------------------------*/ /** * 該類自身的一個靜態引用 */ private static ChatAgent agent; /** * XML-RPC服務器 */ private WebServer server; /*------------------------------------------------------------------------* * 構造函數 * *------------------------------------------------------------------------*/ /** * 構造函數為私有,這樣在整個運行過程中該類就只能有一個實例 * * @param id 用戶ID */ private ChatAgent(String id) { super(); try { XmlRpc.setDriver("org.apache.xerces.parsers.SAXParser"); int delta = Integer.parseInt(id); server = new WebServer(XMLConfig.getChatPort() + delta); ChatHandler handler = new ChatHandler(); server.addHandler(XMLConfig.getChatClass(), handler); } catch (ClassNotFoundException e) { e.printStackTrace(); } } /*------------------------------------------------------------------------* * 公共方法 * *------------------------------------------------------------------------*/ /** * 對該類提供的一個全局訪問點,用來實例化該對象 * * @param id 用戶ID * @return 該類唯一的一個實例 public static ChatAgent getInstance(String id) { if (agent == null) { agent = new ChatAgent(id); } return agent; } /** * 啟動聊天代理 */ public void start() { server.start(); } /** * 停止聊天代理 */ public void stop() { server.shutdown(); } /** * 重啟聊天代理 */ public void restart() { stop(); start(); }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -