I have included the work I have done for adding pubsub support to Smack. The three jars contain the binaries, source and javadoc. I will try to create some user documentation as soon as I get the chance. It was suggested to upload it as an eclipse patch, but this is entirely new code with no alterations to the existing Smack library, so I just uploaded the source code as is.
This code has been tested against a customized version of OpenFire in which I fixed a couple of existing bugs, I will be uploading those as real patches as soon as possible. It was designed around version 1.12 of the spec, and the current OpenFire implementation supports 1.8 (I believe). Some of the basic functionality should still work with that spec, I will try to document the issues when I get the chance.
For anyone that wants to give it a try, start at the PubSubManager class, it should be pretty simple from there (famous last words).
I have created a new thread instead of posting to the existing one (http://www.igniterealtime.org/community/message/191247#191247) since I wasn’t sure if the patch tag would get picked up by the powers that be.
Updated to version 0.6 - Fixed some bugs - Node from previous version is now LeafNode. Node is a base class for LeafNode and CollectionNode. Please note though, CollectionNode exists as a placeholder for future usage, it has not been tested! That being said, some of the basic functionality from the base class (Node) should still work since it is not specific to either node type. - There is now an Item and PayloadItem vs. the Item type that previously existed. - Source code jar has been removed and will now only reside in the JIRA task. Javadoc still needs to be updated to reflect these changes.
smackx-pubsub.0.6.jar (113747 Bytes)
smackx-pubsub-doc.jar (538560 Bytes)