code: public Set<String> getModuleIds(Map<?, ?> formulaCache) {
  		Set<String> result = new LinkedHashSet<String>();
  		for (Map.Entry<String, ModuleDepInfo> entry : entrySet()) {
  			Collection<String> prefixes = entry.getValue().getHasPluginPrefixes(formulaCache);
  			if (prefixes == null) {
  				result.add(entry.getKey());
  			} else {
  				for (String prefix : prefixes) {
  					result.add(prefix + entry.getKey());
  				}
  			}
  		}
  		return result;
  	}
docs: Returns a set of module ids for the keys in this map. If the module dep info objects associated
  with a key specifies has plugin prefixes, then the entries will include the prefixes. Note that
  one map entry may result in multiple (or zero) result entries depending on the evaluation of
  the boolean formula which represents the has conditionals.
  
  @param formulaCache
  the formula cache or null
  
  @return The set of module ids