code: SICoreConnection createConnection()
              throws ResourceAdapterInternalException, ResourceException {
  
          if (TRACE.isEntryEnabled()) {
              SibTr.entry(this, TRACE, "createConnection");
          }
  
          final SICoreConnection connection;
          final SICoreConnectionFactory connectionFactory = _managedConnectionFactory
                  .getCoreFactory();
  
          try {
  
              if (_subject == null) {
  
                  connection = connectionFactory.createConnection(_userName,
                          _password, _properties);
  
              } else {
  
                  connection = connectionFactory.createConnection(_subject,
                          _properties);
  
              }
  
          } catch (SIException exception) {
  
              FFDCFilter
                      .processException(
                              exception,
                              "com.ibm.ws.sib.ra.impl.SibRaConnectionInfo.createConnection",
                              FFDC_PROBE_1, this);
              if (TRACE.isEventEnabled()) {
                  SibTr.exception(this, TRACE, exception);
              }
  
              throw new ResourceException(NLS.getFormattedMessage(
                      "CONNECTION_CREATION_CWSIV0300",
                      new Object[] { exception }, null), exception);
  
          } catch (SIErrorException exception) {
  
              FFDCFilter
                      .processException(
                              exception,
                              "com.ibm.ws.sib.ra.impl.SibRaConnectionInfo.createConnection",
                              FFDC_PROBE_2, this);
              if (TRACE.isEventEnabled()) {
                  SibTr.exception(this, TRACE, exception);
              }
  
              throw new ResourceException(NLS.getFormattedMessage(
                      "CONNECTION_CREATION_CWSIV0300",
                      new Object[] { exception }, null), exception);
  
          }
  
          if (TRACE.isEntryEnabled()) {
              SibTr.exit(this, TRACE, "createConnection", connection);
          }
          return connection;
  
      }
docs: Creates a new <code>SICoreConnection</code> using the properties held
  in this object.
  
  @return a new connection
  @throws ResourceAdapterInternalException
  if a core SPI connection factory
  @throws ResourceException
  if the connection creation fails