protected MQLinkMessageItemStream addNewMQLinkLocalisation(
    TransactionCommon transaction,
    SIBUuid8 messagingEngineUuid,
    LocalizationDefinition destinationLocalizationDefinition)
     throws SIResourceException
  {
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.entry(
        tc,
        "addNewMQLinkLocalisation",
        new Object[] {
          transaction,
          destinationLocalizationDefinition });

    MQLinkMessageItemStream mqlinkItemStream = null;

    // Add to the MessageStore
    try
    {
      mqlinkItemStream = 
        new MQLinkMessageItemStream(
            this,
            messagingEngineUuid);
            
      _localisationManager.
        addNewLocalPtoPLocalisation(transaction,
                                    mqlinkItemStream);      

      // Feature 176658.3.2
      Transaction msTran = txManager.resolveAndEnlistMsgStoreTransaction(transaction);
      addItemStream(mqlinkItemStream, msTran);

      // Set the default limits
      mqlinkItemStream.setDefaultDestLimits();
      // Setup any message depth interval checking (510343)
      mqlinkItemStream.setDestMsgInterval();
           
      //Update the localisation definition of the itemstream now that it has
      //been added into the message store
      mqlinkItemStream.updateLocalizationDefinition(destinationLocalizationDefinition);
      
      attachPtoPLocalisation(mqlinkItemStream, false);
    }
    catch (OutOfCacheSpace e)
    {
      // No FFDC code needed
      
      SibTr.exception(tc, e);
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.exit(tc, "addNewMQLinkLocalisation", "SIResourceException");
      
      throw new SIResourceException(e);
    }
    catch (MessageStoreException e)
    {
      // MessageStoreException shouldn't occur so FFDC.
      FFDCFilter.processException(
        e,
        "com.ibm.ws.sib.processor.impl.MQLinkHandler.addNewMQLinkLocalisation",
        "1:998:1.71",
        this);

      SibTr.exception(tc, e);

      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "addNewMQLinkLocalisation", e);

      throw new SIResourceException(e);
    }
    
    if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
      SibTr.exit(tc, "addNewMQLinkLocalisation", mqlinkItemStream);

    return mqlinkItemStream;
  }
protected MQLinkMessageItemStream addNewMQLinkLocalisation ( TransactionCommon transaction , SIBUuid8 messagingEngineUuid , LocalizationDefinition destinationLocalizationDefinition ) throws SIResourceException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "addNewMQLinkLocalisation" , new Object [ ] { transaction , destinationLocalizationDefinition } ) ; MQLinkMessageItemStream mqlinkItemStream = null ; try { mqlinkItemStream = new MQLinkMessageItemStream ( this , messagingEngineUuid ) ; _localisationManager . addNewLocalPtoPLocalisation ( transaction , mqlinkItemStream ) ; Transaction msTran = txManager . resolveAndEnlistMsgStoreTransaction ( transaction ) ; addItemStream ( mqlinkItemStream , msTran ) ; mqlinkItemStream . setDefaultDestLimits ( ) ; mqlinkItemStream . setDestMsgInterval ( ) ; mqlinkItemStream . updateLocalizationDefinition ( destinationLocalizationDefinition ) ; attachPtoPLocalisation ( mqlinkItemStream , false ) ; } catch ( OutOfCacheSpace e ) { SibTr . exception ( tc , e ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "addNewMQLinkLocalisation" , "SIResourceException" ) ; throw new SIResourceException ( e ) ; } catch ( MessageStoreException e ) { FFDCFilter . processException ( e , "com.ibm.ws.sib.processor.impl.MQLinkHandler.addNewMQLinkLocalisation" , "1:998:1.71" , this ) ; SibTr . exception ( tc , e ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "addNewMQLinkLocalisation" , e ) ; throw new SIResourceException ( e ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "addNewMQLinkLocalisation" , mqlinkItemStream ) ; return mqlinkItemStream ; }
Create a new PtoPMessageItemStream and add it to this Destination's Localisations.
<p>
In addition to creating and adding it, this function also performs all the
necessary updates to make it a recognized part of the Destination.

@param localisationIsRemote should be true if the localisation is remote.
@param transaction  The Transaction to add under.  Cannot be null.
@param messagingEngineUuid The uuid of the messaging engine that owns the localisation
@return PtoPMessageItemStream the new PtoPMessageItemStream added.

@throws SIResourceException if the add fails due to a Message Store problem.