/**
   * Returns an ant {@link Path} that contains a file set with all included source files.
   *
   * @param javaProjectRole the java project role
   * @return the ant {@link Path}
   */
  public final Path createFilteredSourceFilePath(JavaProjectRole javaProjectRole) {

    // the ant path
    Path antPath = new Path(this._projectComponent.getProject());

    // the source folder
    for (String sourceFolder : javaProjectRole.getSourceFolders()) {

      File folder = javaProjectRole.getEclipseProject().getChild(sourceFolder);
      String includePattern = javaProjectRole.getIncludePatternsForSourceFolder(sourceFolder);
      String excludePattern = javaProjectRole.getExcludePatternsForSourceFolder(sourceFolder);

      FileSet fileSet = new FileSet();
      fileSet.setDir(folder);
      fileSet.setIncludes(includePattern);
      fileSet.setExcludes(excludePattern);

      antPath.addFileset(fileSet);
    }

    // return the ant path
    return antPath;
  }