- java.lang.Object
-
- org.jboss.modules.PathUtils
-
public final class PathUtils extends Object
General helpful path utility methods.- Author:
- David M. Lloyd
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringbasicModuleNameToPath(String moduleName)Convert a "basic" module name to a relative path specification.static Stringcanonicalize(String path)Canonicalize the given path.static StringfileNameOfPath(String path)Get the file name (last) segment of the given path.static <T extends Collection<? super String>>
TfilterPaths(Iterable<String> source, PathFilter filter, T target)Filter the paths fromsourceintotargetusingfilter.static Set<String>getPathSet(ClassLoader classLoader)Attempt to get a set of all paths defined directly by the given class loader.static booleanisChild(String parent, String child)Determine whether one path is a child of another.static booleanisDirectChild(String parent, String child)Determine whether one path is a direct (or immediate) child of another.static booleanisRelative(String path)Determine whether a path name is relative.static booleanisSeparator(char ch)Determine whether the given character is a/or a platform-specific separator.static Stringrelativize(String path)Relativize the given path.static StringtoGenericSeparators(String original)Get the given path name with OS-specific separators replaced with the generic/separator character.
-
-
-
Method Detail
-
filterPaths
public static <T extends Collection<? super String>> T filterPaths(Iterable<String> source, PathFilter filter, T target)
Filter the paths fromsourceintotargetusingfilter.- Type Parameters:
T- the collection type- Parameters:
source- the source pathsfilter- the filter to applytarget- the destination for filtered paths- Returns:
- the
targetset
-
getPathSet
public static Set<String> getPathSet(ClassLoader classLoader)
Attempt to get a set of all paths defined directly by the given class loader. If the path set cannot be ascertained,nullis returned.- Parameters:
classLoader- the class loader to inspect- Returns:
- the set, or
nullif the paths could not be determined
-
relativize
public static String relativize(String path)
Relativize the given path. Removes any leading/segments from the path.- Parameters:
path- the path to relativize- Returns:
- the relative path
-
fileNameOfPath
public static String fileNameOfPath(String path)
Get the file name (last) segment of the given path.- Parameters:
path- the path name- Returns:
- the file name
-
canonicalize
public static String canonicalize(String path)
Canonicalize the given path. Removes all.and..segments from the path.- Parameters:
path- the relative or absolute possibly non-canonical path- Returns:
- the canonical path
-
isChild
public static boolean isChild(String parent, String child)
Determine whether one path is a child of another.- Parameters:
parent- the parent pathchild- the child path- Returns:
trueif the child is truly a child of parent
-
isDirectChild
public static boolean isDirectChild(String parent, String child)
Determine whether one path is a direct (or immediate) child of another.- Parameters:
parent- the parent pathchild- the child path- Returns:
trueif the child is truly a direct child of parent
-
toGenericSeparators
public static String toGenericSeparators(String original)
Get the given path name with OS-specific separators replaced with the generic/separator character.- Parameters:
original- the original string- Returns:
- the same string with OS-specific separators replaced with
/
-
isRelative
public static boolean isRelative(String path)
Determine whether a path name is relative.- Parameters:
path- the path name- Returns:
trueif it is relative
-
isSeparator
public static boolean isSeparator(char ch)
Determine whether the given character is a/or a platform-specific separator.- Parameters:
ch- the character to test- Returns:
trueif it is a separator
-
-