docs: private void reconstituteLocalQueuePoint(int startMode,
                                               boolean isSystem)
                      throws MessageStoreException, SIResourceException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc,
                          "reconstituteLocalQueuePoint",
                          new Object[] {
                                        Integer.valueOf(startMode),
                                        Boolean.valueOf(isSystem),
                                        this });
  
          int localisationCount = 0;
          PtoPLocalMsgsItemStream ptoPLocalMsgsItemStream = null;
  
          // There can be one or more localisations in the BaseDestinationHandler.
          NonLockingCursor cursor =
                          _baseDestinationHandler.newNonLockingItemStreamCursor(
                                          new ClassEqualsFilter(PtoPLocalMsgsItemStream.class));
  
          do
          {
              ptoPLocalMsgsItemStream = (PtoPLocalMsgsItemStream) cursor.next();
              if (ptoPLocalMsgsItemStream != null)
              {
                  ptoPLocalMsgsItemStream.reconstitute(_baseDestinationHandler);
                  if (ptoPLocalMsgsItemStream.isToBeDeleted())
                  {
                      ptoPLocalMsgsItemStream.setDeleteRequiredAtReconstitute(true);
                      //clean this up when we get a chance
                      _postMediatedItemStreamsRequiringCleanup.put(
                                                                   _messageProcessor.getMessagingEngineUuid(), ptoPLocalMsgsItemStream);
                      _baseDestinationHandler.setHasReconciledStreamsToBeDeleted(true);
                  }
                  else
                  {
                      localisationCount++;
                      attachLocalPtoPLocalisation(ptoPLocalMsgsItemStream);
  
                      /* Feature 176658.3.2 */
                      assignQueuePointOutputHandler(
                                                    ptoPLocalMsgsItemStream.getOutputHandler(),
                                                    ptoPLocalMsgsItemStream.getLocalizingMEUuid());
                      ConsumerDispatcher consumerDispatcher =
                                      (ConsumerDispatcher) ptoPLocalMsgsItemStream.getOutputHandler();
                      consumerDispatcher.setReadyForUse();
  
                      //Restore the guess sets for system destinations
                      if (isSystem)
                      {
                          _localisationManager.addMEToQueuePointGuessSet(_pToPLocalMsgsItemStream.getLocalizingMEUuid());
                          ptoPLocalMsgsItemStream.
                                          updateLocalizationDefinition(_messageProcessor.
                                                          createLocalizationDefinition(_baseDestinationHandler.getName()));
                      }
                  }
              }
          } while (ptoPLocalMsgsItemStream != null);
  
          cursor.finished();
  
          // also check if there is an AOContainerItemStream for Remote Get
          int aoCount = _remoteSupport.reconstituteLocalQueuePoint(startMode);
  
          // Sanity - There should never be more than one local msgs itemstream
          // or more than one aoContainerItemStream
          if ((localisationCount > 1) || (aoCount > 1))
          {
              SIErrorException e =
                              new SIErrorException(
                                              nls.getFormattedMessage(
                                                                      "INTERNAL_MESSAGING_ERROR_CWSIP0005",
                                                                      new Object[] {
                                                                                    "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization",
                                                                                    "1:595:1.24.1.7",
                                                                                    _baseDestinationHandler.getName() },
                                                                      null));
  
              FFDCFilter.processException(
                                          e,
                                          "com.ibm.ws.sib.processor.impl.destination.JSPtoPRealization.reconstituteLocalQueuePoint",
                                          "1:560: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:567:1.24.1.25",
                                        _baseDestinationHandler.getName() });
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "reconstituteLocalQueuePoint", e);
  
              throw e;
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "reconstituteLocalQueuePoint");
      }