code: public SIMPIterator getTopicNameIterator()
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.entry(tc, "getTopicNameIterator");
      //if the stream is flushed then we have not subscribed
      //to any topics, so we return an empty list
      List topicList = null;
      if(_anycastInputHandler.getAIStream()!=null)
      {
        String[] topics =
              _anycastInputHandler.getRCD().getConsumerDispatcherState().getTopics();
         topicList = Arrays.asList(topics);
      }
      else
      {
        //we are flushed, so we are not currently subscribing for any
        //topics
        topicList = new LinkedList(); //create an empty collection
      }
      
      BasicSIMPIterator iterator = new BasicSIMPIterator(topicList.iterator());
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
        SibTr.exit(tc, "getTopicNameIterator", iterator);
      return iterator;                                   
    }
docs: /* (non-Javadoc)
  @see com.ibm.ws.sib.processor.runtime.SIMPAttachedRemoteSubscriberControllable#getTopicNameIterator()