Package org.eclipse.jetty.util
Class PathWatcher.Config
- java.lang.Object
-
- org.eclipse.jetty.util.PathWatcher.Config
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanexcludeHiddenprotected IncludeExcludeSet<PathMatcher,Path>includeExcludeprotected PathWatcher.Configparentprotected Pathpathprotected longpauseUntilprotected intrecurseDepthstatic intUNLIMITED_DEPTH
-
Constructor Summary
Constructors Constructor Description Config(Path path)Config(Path path, PathWatcher.Config parent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddExclude(String syntaxAndPattern)Add an exclude PathMatcher.voidaddExclude(PathMatcher matcher)Add an exclude PathMatchervoidaddExcludeGlobRelative(String pattern)Add aglob:syntax pattern exclude reference in a directory relative, os neutral, pattern.voidaddExcludeHidden()Exclude hidden files and hidden directoriesvoidaddExcludes(List<String> syntaxAndPatterns)Add multiple exclude PathMatchersvoidaddInclude(String syntaxAndPattern)Add an include PathMatchervoidaddInclude(PathMatcher matcher)Add an include PathMatchervoidaddIncludeGlobRelative(String pattern)Add aglob:syntax pattern reference in a directory relative, os neutral, pattern.voidaddIncludes(List<String> syntaxAndPatterns)Add multiple include PathMatchersPathWatcher.ConfigasSubConfig(Path dir)Build a new config from a this configuration.PathWatcher.ConfiggetParent()PathgetPath()intgetRecurseDepth()booleanisHidden(Path path)booleanisPaused(long now)booleanisRecurseDepthUnlimited()Pathresolve(Path path)voidsetPauseUntil(long time)voidsetRecurseDepth(int depth)Set the recurse depth for the directory scanning.booleantest(Path path)StringtoShortPath(Path path)StringtoString()
-
-
-
Field Detail
-
UNLIMITED_DEPTH
public static final int UNLIMITED_DEPTH
- See Also:
- Constant Field Values
-
parent
protected final PathWatcher.Config parent
-
path
protected final Path path
-
includeExclude
protected final IncludeExcludeSet<PathMatcher,Path> includeExclude
-
recurseDepth
protected int recurseDepth
-
excludeHidden
protected boolean excludeHidden
-
pauseUntil
protected long pauseUntil
-
-
Constructor Detail
-
Config
public Config(Path path)
-
Config
public Config(Path path, PathWatcher.Config parent)
-
-
Method Detail
-
getParent
public PathWatcher.Config getParent()
-
setPauseUntil
public void setPauseUntil(long time)
-
isPaused
public boolean isPaused(long now)
-
addExclude
public void addExclude(PathMatcher matcher)
Add an exclude PathMatcher- Parameters:
matcher- the path matcher for this exclude
-
addExclude
public void addExclude(String syntaxAndPattern)
Add an exclude PathMatcher.Note: this pattern is FileSystem specific (so use "/" for Linux and OSX, and "\\" for Windows)
- Parameters:
syntaxAndPattern- the PathMatcher syntax and pattern to use- See Also:
for detail on syntax and pattern
-
addExcludeGlobRelative
public void addExcludeGlobRelative(String pattern)
Add aglob:syntax pattern exclude reference in a directory relative, os neutral, pattern.On Linux: Config config = new Config(Path("/home/user/example")); config.addExcludeGlobRelative("*.war") => "glob:/home/user/example/*.war" On Windows Config config = new Config(Path("D:/code/examples")); config.addExcludeGlobRelative("*.war") => "glob:D:\\code\\examples\\*.war"- Parameters:
pattern- the pattern, in unixy format, relative to config.dir
-
addExcludeHidden
public void addExcludeHidden()
Exclude hidden files and hidden directories
-
addExcludes
public void addExcludes(List<String> syntaxAndPatterns)
Add multiple exclude PathMatchers- Parameters:
syntaxAndPatterns- the list of PathMatcher syntax and patterns to use- See Also:
for detail on syntax and pattern
-
addInclude
public void addInclude(PathMatcher matcher)
Add an include PathMatcher- Parameters:
matcher- the path matcher for this include
-
addInclude
public void addInclude(String syntaxAndPattern)
Add an include PathMatcher- Parameters:
syntaxAndPattern- the PathMatcher syntax and pattern to use- See Also:
for detail on syntax and pattern
-
addIncludeGlobRelative
public void addIncludeGlobRelative(String pattern)
Add aglob:syntax pattern reference in a directory relative, os neutral, pattern.On Linux: Config config = new Config(Path("/home/user/example")); config.addIncludeGlobRelative("*.war") => "glob:/home/user/example/*.war" On Windows Config config = new Config(Path("D:/code/examples")); config.addIncludeGlobRelative("*.war") => "glob:D:\\code\\examples\\*.war"- Parameters:
pattern- the pattern, in unixy format, relative to config.dir
-
addIncludes
public void addIncludes(List<String> syntaxAndPatterns)
Add multiple include PathMatchers- Parameters:
syntaxAndPatterns- the list of PathMatcher syntax and patterns to use- See Also:
for detail on syntax and pattern
-
asSubConfig
public PathWatcher.Config asSubConfig(Path dir)
Build a new config from a this configuration.Useful for working with sub-directories that also need to be watched.
- Parameters:
dir- the directory to build new Config from (using this config as source of includes/excludes)- Returns:
- the new Config
-
getRecurseDepth
public int getRecurseDepth()
-
isRecurseDepthUnlimited
public boolean isRecurseDepthUnlimited()
-
getPath
public Path getPath()
-
setRecurseDepth
public void setRecurseDepth(int depth)
Set the recurse depth for the directory scanning.-999 indicates arbitrarily deep recursion, 0 indicates no recursion, 1 is only one directory deep, and so on.
- Parameters:
depth- the number of directories deep to recurse
-
isHidden
public boolean isHidden(Path path)
-
-