[jdev] JSR 187 JAIN Instant Messaging 1.0 Public Review Draft

Matt Tucker matt at jivesoftware.com
Tue Feb 1 17:54:49 CST 2005


Mikhail, 

> Nice. In case you're interested, here's my short list of 
> requirements for a powerful and flexible XMPP library:
> - Use java.nio.ByteChannel for I/O abstraction. Of course, 
> the simple host-port connection methods should be provided as 
> well by the connection factory.

That's an interesting idea. 

> - Clean separation between the core XMPP protocol and 
> extensions (including IM). A client might be uninterested in 
> the chat extension details, so full handling of those should 
> be optional.

We already do this in Smack. There's a smack.jar which is core XMPP and
smackx.jar which is extensions. There's a full provider framework so
that people can create their own extensions as well.

> - Three forms of representation: stanza/extension objects - 
> DOM-like trees - raw character strings.

Smack provides objects and raw strings at the moment but not a full DOM
model. We've actually been working on that last part in our Whack
library (upcoming library targeted at components). It's a packet API
that wraps DOM4J Element objects. So far it's working very well and
we've even replaced the core Jive Messenger packet classes with these
new ones. You can view the packet API in CVS:

http://www.jivesoftware.org/fisheye/viewrep/cvs-org/whack

Regards,
Matt



More information about the JDev mailing list