public boolean eventGeneratable(String eventName) {
    
    if (eventName.equals("configuration") && m_Filter != null) {
      return true;
    }
    
    // can't generate the named even if we are not receiving it as an
    // input!
    if (!m_listenees.containsKey(eventName)) {
      return false;
    }
    Object source = m_listenees.get(eventName);
    if (source instanceof EventConstraints) {
      if (!((EventConstraints)source).eventGeneratable(eventName)) {
	return false;
      }
    }
    if (eventName.compareTo("instance") == 0) {
      if (!(m_Filter instanceof StreamableFilter)) {
	return false;
      }
    }
    return true;
  }