Example #1
0
  /** Disconnects XMPP component if one is currently in use. */
  private void stopComponent() {
    synchronized (connectSynRoot) {
      if (component == null || componentManager == null) return;

      if (connectRetry != null) {
        connectRetry.cancel();
        connectRetry = null;
      }

      component.shutdown();
      try {
        componentManager.removeComponent(component.getSubdomain());
      } catch (ComponentException e) {
        logger.error(e, e);
      }

      component.dispose();

      component = null;
      componentManager = null;
    }
  }