Introducing a new type of transport


I’m interested in implementing a new XMPP transport type which basically encapsulates XMPP Packets (at least for now). It’s something like BOCHS does: Encapsulating the XMPP Packets into HTTP request and response.

My first idea was that my plugin implements PacketInterceptor and intercepts packets before processing. Then throws a reject exception to ignore deliver() in LocalSession. This takes care of the outgoing packets (intercepting them and doing the delivery myself).

On the other hand using Component.sendPacket(…) I hope I can inject my incoming packets into the normal routing process.

Maybe this is not working or not a good idea afterall. But surely it could be done! It’s a beautifully architected piece of software, it must be a way.

If you have any comment or idea on how to do this I would welcome it.

Thank you!