示例#1
0
  /**
   * Start Cluster and implement the requirements of {@link
   * org.apache.catalina.util.LifecycleBase#startInternal()}.
   *
   * @exception LifecycleException if this component detects a fatal error that prevents this
   *     component from being used
   */
  @Override
  protected void startInternal() throws LifecycleException {

    if (log.isInfoEnabled()) log.info(sm.getString("simpleTcpCluster.start"));

    try {
      checkDefaults();
      registerClusterValve();
      channel.addMembershipListener(this);
      channel.addChannelListener(this);
      channel.start(channelStartOptions);
      if (clusterDeployer != null) clusterDeployer.start();
      registerMember(channel.getLocalMember(false));
    } catch (Exception x) {
      log.error(sm.getString("simpleTcpCluster.startUnable"), x);
      throw new LifecycleException(x);
    }

    setState(LifecycleState.STARTING);
  }