Interface Sources


public interface Sources
Optional interface for a project to enumerate folders containing sources of various kinds. Use ProjectUtils.getSources(org.netbeans.api.project.Project) as a client. Use Project.getLookup() as a provider.

May be used by the New File wizard, Find in Files, to-do task scanning, the Files tab, etc.

See Also:
  • Field Details

    • TYPE_GENERIC

      static final String TYPE_GENERIC
      Generic source folders containing any source files at all. Generally should be a superset of all other kinds of source folders. Usually the project directory is the only such folder listed.
      See Also:
  • Method Details

    • getSourceGroups

      SourceGroup[] getSourceGroups(String type)
      Find all root source folders matching a given type.

      For a given type, the returned source folders must not overlap, i.e. there may be no duplicates and no folder may be a descendant of another.

      In the case of TYPE_GENERIC source folders, the project must contain at least one such folder (a nonempty array must be returned), and the project directory must either be one of the returned folders, or a descendant of one of the returned folders.

      Parameters:
      type - a kind of folder, e.g. TYPE_GENERIC or JavaProjectConstants.SOURCES_TYPE_JAVA
      Returns:
      a list of top-level source folders of that kind (may be empty but not null)
    • addChangeListener

      void addChangeListener(ChangeListener listener)
      Add a listener to changes in the source groups. Any change in the result of getSourceGroups(java.lang.String) should cause a change event to be fired.
      Parameters:
      listener - a listener to add
    • removeChangeListener

      void removeChangeListener(ChangeListener listener)
      Remove a listener to changes in the source groups.
      Parameters:
      listener - a listener to remove