i wrote a simple plugin for openfire. It is very simple one.It just catches the traffic of openfire and prints it to info.log. It has been very much helpful in working and debugging with applications for openfire.




package com.faisal.bhagat.plugin;

import java.io.File;

import org.apache.log4j.Logger;
import org.jivesoftware.openfire.container.Plugin;
import org.jivesoftware.openfire.container.PluginManager;
import org.jivesoftware.openfire.interceptor.InterceptorManager;
import org.jivesoftware.openfire.interceptor.PacketInterceptor;
import org.jivesoftware.openfire.interceptor.PacketRejectedException;
import org.jivesoftware.openfire.session.Session;
import org.xmpp.packet.Packet;

public class XMLLoggerPlugin implements Plugin {

private XMLPacketInterceptor interceptor = new XMLPacketInterceptor();

public XMLLoggerPlugin() {

}

public void initializePlugin(PluginManager manager, File pluginDirectory) {
InterceptorManager.getInstance().addInterceptor(interceptor);
}

public void destroyPlugin() {
}

private class XMLPacketInterceptor implements PacketInterceptor {
public void interceptPacket(Packet packet, Session session,
boolean incoming, boolean processed)
throws PacketRejectedException {

if(!processed)
{
Logger.getLogger("XML LOGGER").info(
"+++: " + packet.toXML());
}

}

}
}

0

Add a comment

Blog Archive
About Me
About Me
Loading