private void reconstituteMQLink(int startMode) throws MessageStoreException, SIResourceException
    {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.entry(tc, "reconstituteMQLink", new Object[] { Integer.valueOf(startMode), this });

        int localisationCount = 0;
        MQLinkMessageItemStream mqlinkMessageItemStream = null;

        // There can be one or more localisations in the BaseDestinationHandler.
        NonLockingCursor cursor =
                        _baseDestinationHandler.newNonLockingItemStreamCursor(
                                        new ClassEqualsFilter(MQLinkMessageItemStream.class));

        do
        {
            mqlinkMessageItemStream = (MQLinkMessageItemStream) cursor.next();

            if (mqlinkMessageItemStream != null)
            {
                localisationCount++;
                mqlinkMessageItemStream.reconstitute(_baseDestinationHandler);

                attachLocalPtoPLocalisation(mqlinkMessageItemStream);

                /* Feature 176658.3.2 */
                //TODO: Check need all this for MQLinks
                assignQueuePointOutputHandler(
                                              mqlinkMessageItemStream.getOutputHandler(),
                                              mqlinkMessageItemStream.getLocalizingMEUuid());
                ConsumerDispatcher consumerDispatcher =
                                (ConsumerDispatcher) mqlinkMessageItemStream.getOutputHandler();
                consumerDispatcher.setReadyForUse();

                //If the local queue point is awaiting deletion ensure it is correctly configured
                if (mqlinkMessageItemStream.isToBeDeleted())
                {
                    dereferenceLocalisation(mqlinkMessageItemStream);
                }
            }
        } while (mqlinkMessageItemStream != null);

        cursor.finished();

        // Sanity - There should never be more than one mediation itemstream
        if (localisationCount > 1)
        {
            SIErrorException e =
                            new SIErrorException(
                                            nls.getFormattedMessage(
                                                                    "INTERNAL_MESSAGING_ERROR_CWSIP0005",
                                                                    new Object[] {
                                                                                  "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization",
                                                                                  "1:458:1.24.1.7",
                                                                                  _baseDestinationHandler.getName() },
                                                                    null));

            FFDCFilter.processException(
                                        e,
                                        "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization.reconstituteMQLink",
                                        "1:454:1.24.1.25",
                                        this);

            SibTr.exception(tc, e);
            SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0005",
                        new Object[] {
                                      "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization",
                                      "1:461:1.24.1.25",
                                      _baseDestinationHandler.getName() });

            if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                SibTr.exit(tc, "reconstituteMQLink", e);
            throw e;
        }

        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(tc, "reconstituteMQLink");
    }
private void reconstituteMQLink ( int startMode ) throws MessageStoreException , SIResourceException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "reconstituteMQLink" , new Object [ ] { Integer . valueOf ( startMode ) , this } ) ; int localisationCount = 0 ; MQLinkMessageItemStream mqlinkMessageItemStream = null ; NonLockingCursor cursor = _baseDestinationHandler . newNonLockingItemStreamCursor ( new ClassEqualsFilter ( MQLinkMessageItemStream . class ) ) ; do { mqlinkMessageItemStream = ( MQLinkMessageItemStream ) cursor . next ( ) ; if ( mqlinkMessageItemStream != null ) { localisationCount ++ ; mqlinkMessageItemStream . reconstitute ( _baseDestinationHandler ) ; attachLocalPtoPLocalisation ( mqlinkMessageItemStream ) ; assignQueuePointOutputHandler ( mqlinkMessageItemStream . getOutputHandler ( ) , mqlinkMessageItemStream . getLocalizingMEUuid ( ) ) ; ConsumerDispatcher consumerDispatcher = ( ConsumerDispatcher ) mqlinkMessageItemStream . getOutputHandler ( ) ; consumerDispatcher . setReadyForUse ( ) ; if ( mqlinkMessageItemStream . isToBeDeleted ( ) ) { dereferenceLocalisation ( mqlinkMessageItemStream ) ; } } } while ( mqlinkMessageItemStream != null ) ; cursor . finished ( ) ; if ( localisationCount > 1 ) { SIErrorException e = new SIErrorException ( nls . getFormattedMessage ( "INTERNAL_MESSAGING_ERROR_CWSIP0005" , new Object [ ] { "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization" , "1:458:1.24.1.7" , _baseDestinationHandler . getName ( ) } , null ) ) ; FFDCFilter . processException ( e , "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization.reconstituteMQLink" , "1:454:1.24.1.25" , this ) ; SibTr . exception ( tc , e ) ; SibTr . error ( tc , "INTERNAL_MESSAGING_ERROR_CWSIP0005" , new Object [ ] { "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization" , "1:461:1.24.1.25" , _baseDestinationHandler . getName ( ) } ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "reconstituteMQLink" , e ) ; throw e ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "reconstituteMQLink" ) ; }
Reconstitute the MQLink itemstream if it exists.

@return Success of failure of reconstitution of the MQLink itemstream