docs: private StreamSet addNewStreamSet(SIBUuid12 streamID,
                                      SIBUuid8  sourceMEUuid,
                                      SIBUuid12 remoteDestUuid,
                                      SIBUuid8  remoteBusUuid,
                                      String linkTarget)
  
    throws SIRollbackException,
           SIConnectionLostException,
           SIIncorrectCallException,
           SIResourceException,
           SIErrorException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "addNewStreamSet", new Object[]{streamID,
                                                        sourceMEUuid,
                                                        remoteDestUuid,
                                                        remoteBusUuid,
                                                        linkTarget});
      StreamSet streamSet = null;
      try
      {
        LocalTransaction tran = txManager.createLocalTransaction(false);
        Transaction msTran = txManager.resolveAndEnlistMsgStoreTransaction(tran);
  
        //create a persistent stream set
        streamSet = new StreamSet(streamID,
                                  sourceMEUuid,
                                  remoteDestUuid,
                                  remoteBusUuid,
                                  protocolItemStream,
                                  txManager,
                                  0,
                                  destination.isLink() ? StreamSet.Type.LINK_TARGET : StreamSet.Type.TARGET,
                                  tran,
                                  linkTarget);
        protocolItemStream.addItem(streamSet, msTran);
        tran.commit();
  
        synchronized(streamSets)
        {
          streamSets.put(streamID, streamSet);
          sourceMap.put(streamID, sourceMEUuid);
        }
      }
      catch (OutOfCacheSpace e)
      {
        // No FFDC code needed
  
        SibTr.exception(tc, e);
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
          SibTr.exit(tc, "addNewStreamSet", e);
  
        throw new SIResourceException(e);
      }
      catch (MessageStoreException e)
      {
        // MessageStoreException shouldn't occur so FFDC.
        FFDCFilter.processException(
          e,
          "com.ibm.ws.sib.processor.gd.TargetStreamManager.addNewStreamSet",
          "1:471:1.69",
          this);
  
        SibTr.exception(tc, e);
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
          SibTr.exit(tc, "addNewStreamSet", e);
  
        throw new SIResourceException(e);
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "addNewStreamSet", streamSet);
      return streamSet;
    }