r=samuel@sieb.net, rs=brendan@mozilla.org, a=asa@mozilla.org
- factor chatzilla specific code out of this file. Callbacks into chatzilla specific code are now used, making this file more generic.
- according to darinf (the current necko guy), using openOutputStream with asyncRead is a bad thing. Most of the changes in this file involve migrating from usage of openOutputStream to asyncWrite.
- Changes also include fixing the function declaration syntax to match the rest of the code (two lines, named functions.)
Revising nsIChannel to allow for overlapped i/o. This consists of three parts:
1. Factoring nsIChannel into a protocol specific part, the nsIChannel, and a socket specific, the nsITransport.
2. Derive the nsIChannel from a nsIRequest.
2. Changes the notification system from necko and the URILoader to pass the nsIRequest interface instead of nsIChannel interface.
This goal stems from wanting to be able to have active AsyncRead and AsyncWrite operations on nsSocketTransport.
This is desired because it would greatly simplify the task of maintaining persistent/reusable socket connections
for FTP, HTTP, and Imap (and potentially other protocols). The problem with the existing nsIChannel interface is
that it does not allow one to selectively suspend just one of the read or write operations while keeping the other active.
r=darin@netscape.comsr=rpotts@netscape.com
1. Factoring nsIChannel into a protocol specific part, the nsIChannel, and a socket specific, the nsITransport.
2. Derive the nsIChannel from a nsIRequest.
2. Changes the notification system from necko and the URILoader to pass the nsIRequest interface instead of nsIChannel interface.
This goal stems from wanting to be able to have active AsyncRead and AsyncWrite operations on nsSocketTransport.
This is desired because it would greatly simplify the task of maintaining persistent/reusable socket connections
for FTP, HTTP, and Imap (and potentially other protocols). The problem with the existing nsIChannel interface is
that it does not allow one to selectively suspend just one of the read or write operations while keeping the other active.
The full details of the change on written up in the netlib newsgroup.
r=darin@netscape.comsr=rpotts@netscape.com
a=brendan
* chatzilla-service.js
added components required for irc:// urls.
* command-manager.js
sort names before returning
* connection-xpcom.js
added support for async reads.
* events.js
Added "yield" event type to break out of event processing.
* irc-debug.js
add MPL
show data for "senddata" type events.
* irc.js
add password param for server.login() method.
add key param for channel.join() method.
refactoring to use the connection's async read method if it's there
(it's not in connection-rhino.js yet.)
* utils.js
add hyphenateWord function.
* chatzilla.xul
add windowtype attribute.
apply exv@randomc.com 's userlist context menu patch.
* commands.js
apply cbegle@geocast.com 's /stalk and /unstalk patch.
update join, server, and attach commands to include new params.
alias leave part.
removed bogus comments.
* handlers.js
apply cbegle@geocast.com 's /stalk and /unstalk patch.
update join, server, and attach commands to include new params.
check for pending irc urls after connection is made.
* static.js
apply cbegle@geocast.com 's /stalk and /unstalk patch.
apply exv@randomc.com 's userlist context menu patch.
add long word rule to munger.
implement parseIRCURL() and gotoIRCURL() function.
implement doURLTest() to test the other two.
1) Passing the proxy hostname and port to the underlying socket
and changing all users that appeared in lxr.
2) (psm-glue) registering with the cache manager to allow local loopback so that
psm will work with a proxy.
3) (psm-glue) Storing proxy information in psmSocketInfo.
most reviewed by gagan@netscape.com.
* Makefile.in, makefile.win
Install files under chrome directory instead of bin. smfr will adjust mac next.
* connection-xpcom.js, utils.js, readprefs.js
Remove getPriv call (not needed for chrome:// url.)
* irc/xul/content/*, irc/xul/skin/*
Copied test3* files from test directory into new structure. Renamed test3* to chatzilla*.
Changes to install command related files.
connection-xpcom.js:
style changes; fix to verify the socket is open before send/recieve,
* dcc.js, http.js, events.js:
style changes
* irc-debug.js:
changes to display network events
* irc.js:
style changes, userIsMe() convenience function added.
Route events to parent network if there is no local landing spot.
add usersAffected property to onChanMode events.
* utils.js:
add jsenv.HAS_DOCUMENT
* listbox.js
add MPL (duh)
add prepend and insert methods
* test3-handlers.js
Add MPL
Use new command stuff to provide online help and error reporting.
Hook some basic server messages to output window.
Alphabetize nicks (order breaks when someone /nicks)
Added nick property to some display() lines so they can be CSS'd by user.
Listen for onChanMode event.
Modify client.viewsArray to allow for multiple view with the same name.
* test3-static.js
Add MPL
Show navigator.userAgent in VERSION reply
modify setCurrentObject to not care if there isnt a toolbutton associated
modify getTBForObject to work with multiple view w/ same name
test3.xul
Add MPL
Include command related scripts