您的位置:首页 > 其它

基于Mozilla Thunderbird的扩展开发(五)---进程间通信之Socket篇(上)

2008-05-19 21:12 417 查看


const tBirdBiffServerUi =

addEventListener("load", tBirdBiffServerUi.tBirdBiffServerOnLoad, true);
addEventListener("close", tBirdBiffServerUi.tBirdBiffServerOnClose, true);

服务器类,负责创建服务器端socket,并异步监听来自客户端的请求,管理邮箱状态的变化和来自客户端的连接。

const CI = Components.interfaces, CC = Components.classes, CR = Components.results;
const newMail= "1";
const noMail = "0";
const serverError = "9";

tBirdBiffServer.classID = Components.ID("{d2c9b4c6-2851-4d25-8cb6-3d3b037f8e1e}");//组件ID
tBirdBiffServer.contractID = "@phinecos.cnblogs.com/TBbiff/server;1";
tBirdBiffServer.classDescription = "TBbiff Server Service";

function tBirdBiffServer()

broadcast: function()

addConnection: function(value)

removeConnection: function(value)
getServerSocket: function()
closeServerSocket: function()
initialize: function()
monitorBiff: function(isStarting)

closeAllConnections: function()
finalize: function()

updateUi: function(window)

setMailStatus: function(value)

check: function()

checkServers: function()

来自客户端的连接对象类:
function tBirdBiffServerConnection()

tBirdBiffServerConnection.prototype =

服务器监听类,负责监听来自客户端的各个请求:

function tBirdBiffServerConnection()

tBirdBiffServerConnection.prototype =

const tBirdBiffServerSocketListener =

服务器邮箱状态监听者,负责监视邮箱的状态变化:

const tBirdBiffServerBiffStateListener =

实际的检查邮箱状态的处理过程放在tBirdBiffServerCheckCallback函数中。

const tBirdBiffServerCheckCallback =

Ok,本文用javascript,遵循XPCOM规范实现了一个简单的TCP服务器,服务器类型为阻塞式I/O,客户端代码将在下一篇文章中介绍。

Reference:[/b]

1, https://addons.mozilla.org/en-US/thunderbird/addon/3788
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐