package org.buddycloud.channelserver.utils; import org.apache.log4j.Logger; import org.buddycloud.channelserver.Configuration; import org.jivesoftware.whack.ExternalComponentManager; import org.xmpp.component.Component; import org.xmpp.component.ComponentException; public class ComponentBase { protected int socket; protected String hostname; protected String domain; protected String password; protected Component engine; private static final Logger LOGGER = Logger.getLogger(ComponentBase.class); protected void initialize(final Configuration configuration, final String domain) { this.domain = domain; hostname = configuration.getXmppHost(); socket = Integer.parseInt(configuration.getComponentPort()); password = configuration.getProperty("xmpp.secretkey"); } public boolean run() throws ComponentException { try { ExternalComponentManager manager = new ExternalComponentManager(hostname, socket); manager.setDefaultSecretKey(password); manager.addComponent(domain, engine); } catch (ComponentException e) { LOGGER.error(e.getMessage()); return false; } return true; } }