|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.sonar.api.batch.fs.internal.DefaultFileSystem
public class DefaultFileSystem
| Nested Class Summary | |
|---|---|
static class |
DefaultFileSystem.Cache
|
| Nested classes/interfaces inherited from interface org.sonar.api.batch.fs.FileSystem |
|---|
FileSystem.Index |
| Constructor Summary | |
|---|---|
|
DefaultFileSystem(File baseDir)
Only for testing |
protected |
DefaultFileSystem(File baseDir,
DefaultFileSystem.Cache cache)
|
| Method Summary | |
|---|---|
DefaultFileSystem |
add(InputDir inputDir)
Adds InputDir to the list. |
DefaultFileSystem |
add(InputFile inputFile)
Adds InputFile to the list and registers its language, if present. |
DefaultFileSystem |
addLanguages(String language,
String... others)
Adds a language to the list. |
File |
baseDir()
Absolute base directory of module |
protected void |
doPreloadFiles()
This method is called before each search of files. |
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. |
InputDir |
inputDir(File dir)
Returns InputDir matching the current File. |
InputFile |
inputFile(FilePredicate predicate)
Returns the single element matching the predicate. |
Iterable<InputFile> |
inputFiles(FilePredicate predicate)
Input files matching the given attributes. |
boolean |
isDefaultJvmEncoding()
|
SortedSet<String> |
languages()
Languages detected in all files, whatever their type (main or test) |
FilePredicates |
predicates()
Factory of FilePredicate |
void |
setBaseDir(File baseDir)
|
DefaultFileSystem |
setEncoding(Charset e)
|
DefaultFileSystem |
setWorkDir(File d)
|
File |
workDir()
Absolute work directory. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DefaultFileSystem(File baseDir)
protected DefaultFileSystem(File baseDir,
DefaultFileSystem.Cache cache)
| Method Detail |
|---|
public File baseDir()
FileSystem
baseDir in interface FileSystempublic void setBaseDir(File baseDir)
public DefaultFileSystem setEncoding(@Nullable
Charset e)
public Charset encoding()
FileSystem
encoding in interface FileSystempublic boolean isDefaultJvmEncoding()
public DefaultFileSystem setWorkDir(File d)
public File workDir()
FileSystemFileSystem.baseDir().
workDir in interface FileSystempublic InputFile inputFile(FilePredicate predicate)
FileSystemIllegalArgumentException is thrown. Returns null
if no files match.
How to use :
InputFile file = fs.inputFile(fs.predicates().hasRelativePath("src/Foo.php"));
inputFile in interface FileSystemFileSystem.predicates()public Iterable<InputFile> inputFiles(FilePredicate predicate)
FileSystemattributes 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(); Iterablefiles = fs.inputFiles(p.and(p.hasLanguage("java"), p.hasType(InputFile.Type.MAIN)));
inputFiles in interface FileSystemFileSystem.predicates()public boolean hasFiles(FilePredicate predicate)
FileSystemInputFile matches
the given predicate. This method can be faster than checking if FileSystem.inputFiles(org.sonar.api.batch.fs.FilePredicate)
has elements.
hasFiles in interface FileSystemFileSystem.predicates()public Iterable<File> files(FilePredicate predicate)
FileSystem
files in interface FileSystemFileSystem.predicates()public InputDir inputDir(File dir)
FileSystemInputDir matching the current File.
inputDir in interface FileSystempublic DefaultFileSystem add(InputFile inputFile)
public DefaultFileSystem add(InputDir inputDir)
public DefaultFileSystem addLanguages(String language,
String... others)
languages() without
using add(org.sonar.api.batch.fs.InputFile).
public SortedSet<String> languages()
FileSystem
languages in interface FileSystempublic FilePredicates predicates()
FileSystemFilePredicate
predicates in interface FileSystemprotected void doPreloadFiles()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||