Exemplo n.º 1
0
  /**
   * Returns the map (folder - (extension - processor) ) of all processors installed in this
   * NetBeans which process IG.
   */
  @SuppressWarnings("unchecked")
  private Map<FolderType, Map<String, Processor<Element>>> getRegisteredProcessors() {
    final Map<FolderType, Map<String, Processor<Element>>> ret =
        new HashMap<FolderType, Map<String, Processor<Element>>>();

    for (final FolderType ft : FolderType.values()) {
      ret.put(ft, new HashMap<String, Processor<Element>>());
    }

    for (final Processor p : Lookup.getDefault().lookupAll(Processor.class)) {
      if (p.getResultType().equals(Element.class)) {
        if (p.processUndefined()) {
          ret.get(p.getFolder()).put("*", p);
        }
        ret.get(p.getFolder()).put(p.getExtension(), p);
      }
    }

    return ret;
  }