docs: public boolean cleanupLocalisations() throws SIResourceException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "cleanupLocalisations");
  
      // true if all localisations have been cleaned up successfully    
      boolean allCleanedUp = true;
  
      // removing a local localisation. Cleanup the anycastContainerItemStream and anycastOutputHandler first
      if (_anycastOutputHandler != null
        || _aoContainerItemStream != null)
      {
        try
        {
          boolean aohCleanup = false;
          if (_anycastOutputHandler != null)
          {
            aohCleanup = _anycastOutputHandler.cleanup(true, true);
            if (aohCleanup)
              _anycastOutputHandler = null;
          }
                  
          if (aohCleanup)
          {
                  
            LocalTransaction siTran =
              _baseDestinationHandler.getTransactionManager().createLocalTransaction(true);
  
            if (_aoContainerItemStream != null)
            {
              _aoContainerItemStream.removeAll((Transaction) siTran);
              _aoContainerItemStream = null;
            }
  
            siTran.commit();
          }
                  
          if (allCleanedUp)
            allCleanedUp = aohCleanup;
        }
        catch (Exception e)
        {
          FFDCFilter.processException(
            e,
            "com.ibm.ws.sib.processor.impl.destination.RemotePtoPSupport.cleanupLocalisations",
            "1:303:1.8.1.5",
          this);
  
          SibTr.exception(tc, e);
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(
              tc,
              "cleanupLocalisations",
              "SIResourceException");
          if (allCleanedUp)
            allCleanedUp = false;
          throw new SIResourceException(e);
        }
      } // end if 
  
      //Now remove the infrastructure for any consumers issuing remote gets to another
      //localisation of the destination
      Iterator i = _anycastInputHandlers.keySet().iterator();
      boolean anycastCleanUp = true;
    
      while(i.hasNext())
      {
        String key = (String) i.next();
                
        AnycastInputHandler aih = _anycastInputHandlers.get(key);
        if ( !(aih.destinationDeleted()) )
        {
          //The AIH is not flushed yet
          anycastCleanUp = false;
        }
        else if ( !(removeAnycastInputHandlerAndRCD(key)) )
        {
          //We failed to cleanup the AIH and RCD itemStream
          anycastCleanUp = false;
        }
      }
              
      if (allCleanedUp)
      {
        allCleanedUp = anycastCleanUp;
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "cleanupLocalisations", Boolean.valueOf(allCleanedUp));
  
      return allCleanedUp;
    }