package org.jivesoftware.openfire.plugin.gojara.base;
import java.util.Map;
import org.jivesoftware.openfire.XMPPServer;
import org.jivesoftware.util.PropertyEventListener;
/**
* @author Holger Bergunde
*
* This class implements the @see PropertyEventListener It monitors the
* JiveGlobals to check if there are made changes.
*
*/
public abstract class RemoteRosterPropertyListener implements PropertyEventListener {
public void xmlPropertySet(String property, Map<String, Object> params) {
}
public void xmlPropertyDeleted(String property, Map<String, Object> params) {
}
public void propertySet(String property, Map<String, Object> params) {
if (property.contains("plugin.remoteroster.jids.")) {
changedProperty(property.replace("plugin.remoteroster.jids.", ""));
}
}
public void propertyDeleted(String property, Map<String, Object> params) {
String hostname = XMPPServer.getInstance().getServerInfo().getXMPPDomain();
property += "." + hostname;
changedProperty(property.replace("plugin.remoteroster.jids.", ""));
}
/**
* If there were changes we are interested in, this template method get
* called. The property string is truncated. Method gets triggered, if the
* property contains substring "plugin.remoteroster.jids."
*
* @param prop
* substring of changes property
*/
protected abstract void changedProperty(String prop);
}