@ScannerSide public interface FileSystem
FileSystem manages all the source files to be analyzed.
 This is not an extension point so it must not be implemented by plugins. It must be injected as a constructor parameter :
 public class MySensor implements Sensor {
   private final FileSystem fs;
   public MySensor(FileSystem fs) {
     this.fs = fs;
   }
 }
 
 DefaultFileSystem and the related DefaultInputFile,
 for example :
 
 DefaultFileSystem fs = new DefaultFileSystem();
 fs.add(new DefaultInputFile("myprojectKey", "src/foo/bar.php"));
 | Modifier and Type | Interface and Description | 
|---|---|
| static interface  | FileSystem.IndexInterface of the underlying file index. | 
| Modifier and Type | Method and Description | 
|---|---|
| File | baseDir()Absolute base directory of module | 
| Charset | encoding()Default encoding of files in this project. | 
| Iterable<File> | files(FilePredicate predicate)Files matching the given predicate. | 
| boolean | hasFiles(FilePredicate predicate)Returns true if at least one  InputFilematches
 the given predicate. | 
| InputDir | inputDir(File dir) | 
| InputFile | inputFile(FilePredicate predicate)Returns the single element matching the predicate. | 
| Iterable<InputFile> | inputFiles(FilePredicate predicate)Input files matching the given attributes. | 
| SortedSet<String> | languages()Languages detected in all files, whatever their type (main or test) | 
| FilePredicates | predicates()Factory of  FilePredicate | 
| File | resolvePath(String path)Utility method mainly used to resolve location of reports. | 
| File | workDir()Absolute work directory. | 
Charset encoding()
InputFile it is preferable to use InputFile.charset()File workDir()
baseDir().FilePredicates predicates()
FilePredicate@CheckForNull InputFile inputFile(FilePredicate predicate)
IllegalArgumentException is thrown. Returns null
 if no files match.
 How to use :
 InputFile file = fs.inputFile(fs.predicates().hasRelativePath("src/Foo.php"));
 predicates()@CheckForNull InputDir inputDir(File dir)
IllegalArgumentException - is File is null or not a directory.Iterable<InputFile> inputFiles(FilePredicate predicate)
attributes is empty.
 
 Important - result is an Iterable to benefit from streaming and decreasing
 memory consumption. It should be iterated only once, else copy it into a list :
 com.google.common.collect.Lists.newArrayList(inputFiles(predicate))
 
How to use :
 
 FilePredicates p = fs.predicates();
 Iterable<InputFile> files = fs.inputFiles(p.and(p.hasLanguage("java"), p.hasType(InputFile.Type.MAIN)));
 
 predicates()boolean hasFiles(FilePredicate predicate)
InputFile matches
 the given predicate. This method can be faster than checking if inputFiles(org.sonar.api.batch.fs.FilePredicate)
 has elements.predicates()Iterable<File> files(FilePredicate predicate)
predicates()SortedSet<String> languages()
File resolvePath(String path)
Copyright © 2009–2016 SonarSource. All rights reserved.