public void start() throws JMSException {
synchronized (this) {
    ensureOpen();
    setModified();
    try {
      if (stopped) {
        if (_logger.isLoggable(Level.FINE)) {
          _logger.fine("GSConnectionImpl.start()  starting connection: " + toString());
        }
        for (int i=0; i < sessions.size(); i++) {
          GSSessionImpl session=(GSSessionImpl)sessions.get(i);
          session.start();
        }
        stopped=false;
        if (_logger.isLoggable(Level.FINE)) {
          _logger.fine("GSConnectionImpl.start()  connection was started: " + toString());
        }
      }
    }
 catch (    JMSException exception) {
      throw exception;
    }
  }
}

public void start ( ) throws JMSException { synchronized ( this ) { ensureOpen ( ) ; setModified ( ) ; try { if ( stopped ) { if ( _logger . isLoggable ( Level . FINE ) ) { _logger . fine ( "GSConnectionImpl.start()  starting connection: " + toString ( ) ) ; } for ( int i = 0 ; i < sessions . size ( ) ; i ++ ) { GSSessionImpl session = ( GSSessionImpl ) sessions . get ( i ) ; session . start ( ) ; } stopped = false ; if ( _logger . isLoggable ( Level . FINE ) ) { _logger . fine ( "GSConnectionImpl.start()  connection was started: " + toString ( ) ) ; } } } catch ( JMSException exception ) { throw exception ; } } }
overwrite of the api method for starting the topic connection . loops on all the sessions and starts them .
