code: @Override
      public Conversation connect(InetSocketAddress remoteHost,
                                  ConversationReceiveListener convRecvListener,
                                  String chainName)
                      throws SIResourceException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "connect", new Object[] { remoteHost, convRecvListener, chainName });
          // begin F178022, F196678.10
          if (state == State.UNINITIALISED) {
              throw new SIErrorException(nls.getFormattedMessage("SVRCONNMGR_INTERNAL_SICJ0059", null, "SVRCONNMGR_INTERNAL_SICJ0059")); // D226223
          } else if (state == State.INITIALISATION_FAILED) {
              String nlsMsg = nls.getFormattedMessage("EXCP_CONN_FAIL_NO_CF_SICJ0007", null, null);
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(this, tc, "connection failed because comms failed to initialise");
              throw new SIResourceException(nlsMsg);
          }
          // end F178022, F196678.10
  
          Conversation retValue = connectionTracker.connect(remoteHost,
                                                            convRecvListener,
                                                            chainName,
                                                            Conversation.ME);
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "connect", retValue);
          return retValue;
      }
docs: begin F171173