public interface FileSystem extends BatchComponent
The unit tests needing an instance of FileSystem can use the implementation
DefaultFileSystem
and the related org.sonar.api.scan.filesystem.internal.DefaultInputFile
:
DefaultFileSystem fs = new DefaultFileSystem(); fs.add(new DefaultInputFile("src/foo/bar.php"));
Modifier and Type | Method and Description |
---|---|
File |
baseDir()
Absolute base directory of module
|
Charset |
encoding()
Default encoding of input files.
|
Iterable<File> |
files(FilePredicate predicate)
Files matching the given predicate.
|
boolean |
hasFiles(FilePredicate predicate)
Returns true if at least one
InputFile matches
the given predicate. |
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)
|
File |
workDir()
Absolute work directory.
|
Charset encoding()
File workDir()
baseDir()
.@CheckForNull InputFile inputFile(FilePredicate predicate)
IllegalArgumentException
is thrown. Returns null
if no files match.FilePredicates
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))
FilePredicates
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.FilePredicates
Iterable<File> files(FilePredicate predicate)
FilePredicates
Copyright © 2009-2014 SonarSource. All Rights Reserved.