docs: public void closeConsumers() throws SIResourceException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "closeConsumers");
  
      //Tell any destinations that target this destination to close their consumers
      if (aliasesThatTargetThisDest != null)
      {
        synchronized(aliasesThatTargetThisDest)
        {
          Iterator i = aliasesThatTargetThisDest.iterator();
          while (i.hasNext())
          {
            AbstractAliasDestinationHandler abstractAliasDestinationHandler = 
              (AbstractAliasDestinationHandler) i.next();
            abstractAliasDestinationHandler.closeConsumers();
          }
        }
      }
      
      // Close all consumers
      if (isPubSub())
      {
        SubscriptionTypeFilter filter = new SubscriptionTypeFilter();  
        filter.LOCAL = Boolean.TRUE;  
        SIMPIterator itr = getSubscriptionIndex().iterator(filter);  
        while(itr.hasNext())  
        {  
          ControllableSubscription subscription = (ControllableSubscription)itr.next(); 
          ConsumerDispatcher cd = (ConsumerDispatcher)subscription.getOutputHandler();
  
          //Look for subscriptions made through this destination (as opposed to
          //through an alias)
          if (cd.getConsumerDispatcherState().getTopicSpaceUuid().equals(getUuid()))
          {
            //Close the consumers of the subscription  
            cd.closeAllConsumersForDelete(this);
          }
        }
  
        // Remove the ProxyHandlers attached to this destination
        // sanjay liberty change
        //messageProcessor.getProxyHandler().topicSpaceDeletedEvent(this);
        
        //Delete any durable subscriptions if they are made through an alias
        //in-case the underlying topicspace is not being deleted
        if (isAlias())
        {
          itr = getSubscriptionIndex().iterator(filter);  
          while(itr.hasNext())  
          {  
            ControllableSubscription subscription = (ControllableSubscription)itr.next(); 
            ConsumerDispatcher cd = (ConsumerDispatcher)subscription.getOutputHandler();
            ConsumerDispatcherState subState = cd.getConsumerDispatcherState();
  
            //Look for subscriptions made through this alias
            if ((subState.getTopicSpaceUuid().equals(getUuid())) &&
                (cd.isDurable()))
            {
              try {
                deleteDurableSubscription(subState.getSubscriberID(), subState.getDurableHome());
              } catch (SIException e) 
              {
                FFDCFilter.processException(
                    e,
                    "com.ibm.ws.sib.processor.impl.AbstractDestinationHandler.closeConsumers",
                    "1:347:1.57",
                    this);
  
                SibTr.exception(tc, e);
              }
            }
          } 
          itr.finished();
          
        }
  
      }
      else
      {
        LocalizationPoint ptoPMessageItemStream = getQueuePoint(messageProcessor.getMessagingEngineUuid());
        if (ptoPMessageItemStream != null)
        {
          ConsumerDispatcher consumerManager =
            (ConsumerDispatcher)ptoPMessageItemStream.getConsumerManager();
          consumerManager.closeAllConsumersForDelete(this);
        }
      }
      
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "closeConsumers");
  
      return;
    }