docs: public void reconcileRemoteLinks()
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "reconcileRemoteLinks");
  
          LinkTypeFilter filter = new LinkTypeFilter();
          filter.REMOTE = Boolean.TRUE;
          filter.UNRECONCILED = Boolean.TRUE;
          SIMPIterator itr = linkIndex.iterator(filter);
  
          while (itr.hasNext())
          {
              LinkHandler linkHandler = (LinkHandler) itr.next();
              SIBUuid12 linkUuid = linkHandler.getUuid();
              ForeignBusDefinition foreignBusDefinition;
  
              //  CallBack to Admin
              try
              {
                  // Get the foreign bus definition
                  JsBus jsBus = (JsBus) messageProcessor.getMessagingEngine().getBus();
                  foreignBusDefinition = jsBus.getForeignBusForLink(linkUuid.toString());
  
                  //Check the link exists
                  if (foreignBusDefinition != null)
                  {
                      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                          SibTr.debug(tc, "Retrieved foreignBusDefinition " + foreignBusDefinition.getName());
                      VirtualLinkDefinition vld = foreignBusDefinition.getLinkForNextHop();
                      if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                          SibTr.debug(tc, "Retrieved link for next hop " + vld.getName());
                  }
              } catch (SIBExceptionNoLinkExists e)
              {
                  // No FFDC code needed
                  //This is ok.  It means the link has been deleted from WCCM
                  SibTr.exception(tc, e);
                  foreignBusDefinition = null;
              } catch (SIBExceptionBusNotFound e)
              {
                  // No FFDC code needed
                  //This is ok.  It means the next hop bus has been deleted from WCCM
                  SibTr.exception(tc, e);
                  foreignBusDefinition = null;
              }
  
              if (foreignBusDefinition == null)
              {
                  // Admin could not find the bus, mark the link for deletion
  
                  LocalTransaction siTran = txManager.createLocalTransaction(true);
                  try
                  {
                      // Set the deletion flag in the DH persistently. A transaction per DH??
                      linkHandler.setToBeDeleted(true);
                      linkHandler.requestUpdate((Transaction) siTran);
                      // commit the transaction
                      siTran.commit();
  
                      SibTr.info(tc, "REMOTE_LINK_DELETE_INFO_CWSIP0067",
                                 new Object[] { linkHandler.getName(), linkHandler.getUuid() });
  
                      linkIndex.delete(linkHandler);
                  } catch (MessageStoreException me)
                  {
                      // MessageStoreException shouldn't occur so FFDC.
                      FFDCFilter.processException(me,
                                                  "com.ibm.ws.sib.processor.impl.DestinationManager.reconcileRemoteLinks", "1:2839:1.508.1.7", this);
  
                      SibTr.exception(tc, me);
                  } catch (SIException ce)
                  {
                      // MessageStoreException shouldn't occur so FFDC.
                      FFDCFilter.processException(
                                                  ce,
                                                  "com.ibm.ws.sib.processor.impl.DestinationManager.reconcileRemoteLinks",
                                                  "1:2849:1.508.1.7",
                                                  this);
  
                      SibTr.exception(tc, ce);
  
                      handleRollback(siTran);
                  }
              }
              else
              {
                  try
                  {
                      //For inter-bus links, we route the messages to the inbound ME uuid
                      //advertised in WLM.  For MQ links we send to the outbound ME uuid.
                      //We cant tell from the linkHandler what type it is.  The way we
                      //decide is if the inbound ME uuid advertised in WLM is NULL then
                      //its an MQ link
                      LinkSelection s = null;
                      LinkManager linkManager = messageProcessor.getLinkManager();
                      try
                      {
                          s = linkManager.select(linkHandler.getUuid());
                      } catch (LinkException e)
                      {
                          // No FFDC code needed
                          SibTr.exception(tc, e);
                          throw new SIResourceException(e);
                      }
  
                      SIBUuid8 localisingME = null;
                      SIBUuid8 routingME = null;
                      if (s != null)
                      {
                          localisingME = s.getInboundMeUuid();
                          routingME = s.getOutboundMeUuid();
  
                          //If the inbound ME uuid is null, then assume its an MQ link
                          //and use the outbound ME uuid
                          if (localisingME == null)
                          {
                              localisingME = routingME;
                          }
                      }
                      else
                      {
                          localisingME = new SIBUuid8(SIMPConstants.UNKNOWN_UUID);
                          routingME = null;
                      }
  
                      linkHandler.updateLocalisationSet(localisingME, routingME);
  
                      linkIndex.create(linkHandler);
                  } catch (SIException e)
                  {
                      // SIException should not occur
                      FFDCFilter.processException(
                                                  e,
                                                  "com.ibm.ws.sib.processor.impl.DestinationManager.reconcileRemoteLinks",
                                                  "1:2909:1.508.1.7",
                                                  this);
  
                      SibTr.exception(tc, e);
  
                      // We`ve logged the error.  Now put the link into corrupt state.  It will
                      // stay in this state until the next reconcile, unless its manually reset.
                      linkIndex.corrupt(linkHandler);
                  }
              }
          }
          itr.finished();
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "reconcileRemoteLinks");
      }