Package org.apache.sshd.common.util.io
Class PathUtils
- java.lang.Object
-
- org.apache.sshd.common.util.io.PathUtils
-
public final class PathUtils extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
PathUtils.LazyDefaultUserHomeFolderHolder
-
Field Summary
Fields Modifier and Type Field Description static java.util.Comparator<java.nio.file.Path>
BY_CASE_INSENSITIVE_FILENAME
Compares 2Path
-s by their case insensitivefilename
static java.util.Comparator<java.nio.file.Path>
BY_CASE_SENSITIVE_FILENAME
Compares 2Path
-s by their case sensitivefilename
static UnaryEquator<java.nio.file.Path>
EQ_CASE_INSENSITIVE_FILENAME
static UnaryEquator<java.nio.file.Path>
EQ_CASE_SENSITIVE_FILENAME
static char
HOME_TILDE_CHAR
private static java.util.concurrent.atomic.AtomicReference<java.util.function.Supplier<? extends java.nio.file.Path>>
USER_HOME_RESOLVER_HOLDER
-
Constructor Summary
Constructors Modifier Constructor Description private
PathUtils()
Private Constructor
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringBuilder
appendUserHome(java.lang.StringBuilder sb)
static java.lang.StringBuilder
appendUserHome(java.lang.StringBuilder sb, java.lang.String userHome)
static java.lang.StringBuilder
appendUserHome(java.lang.StringBuilder sb, java.nio.file.Path userHome)
static java.nio.file.Path
getUserHomeFolder()
static java.lang.String
normalizePath(java.lang.String path)
Replaces leading '~' with user's HOME directory Replaces any forward slashes with the O/S directory separatorstatic int
safeCompareFilename(java.nio.file.Path p1, java.nio.file.Path p2, boolean caseSensitive)
Compares 2Path
-s by theirfilename
while allowing for one or both to benull
.static void
setUserHomeFolderResolver(java.util.function.Supplier<? extends java.nio.file.Path> resolver)
Set the reported value fromgetUserHomeFolder()
-
-
-
Field Detail
-
BY_CASE_INSENSITIVE_FILENAME
public static final java.util.Comparator<java.nio.file.Path> BY_CASE_INSENSITIVE_FILENAME
Compares 2Path
-s by their case insensitivefilename
-
EQ_CASE_INSENSITIVE_FILENAME
public static final UnaryEquator<java.nio.file.Path> EQ_CASE_INSENSITIVE_FILENAME
-
BY_CASE_SENSITIVE_FILENAME
public static final java.util.Comparator<java.nio.file.Path> BY_CASE_SENSITIVE_FILENAME
Compares 2Path
-s by their case sensitivefilename
-
EQ_CASE_SENSITIVE_FILENAME
public static final UnaryEquator<java.nio.file.Path> EQ_CASE_SENSITIVE_FILENAME
-
HOME_TILDE_CHAR
public static final char HOME_TILDE_CHAR
- See Also:
- Constant Field Values
-
USER_HOME_RESOLVER_HOLDER
private static final java.util.concurrent.atomic.AtomicReference<java.util.function.Supplier<? extends java.nio.file.Path>> USER_HOME_RESOLVER_HOLDER
-
-
Method Detail
-
safeCompareFilename
public static int safeCompareFilename(java.nio.file.Path p1, java.nio.file.Path p2, boolean caseSensitive)
Compares 2Path
-s by theirfilename
while allowing for one or both to benull
.- Parameters:
p1
- 1stPath
p2
- 2ndPath
caseSensitive
- Whether comparison is case sensitive- Returns:
- Comparison results -
null
-s are considered "greater" than non-null
-s
-
normalizePath
public static java.lang.String normalizePath(java.lang.String path)
- Replaces leading '~' with user's HOME directory
- Replaces any forward slashes with the O/S directory separator
- Parameters:
path
- Input path - ignored ifnull
/empty/blank- Returns:
- Adjusted path
-
getUserHomeFolder
public static java.nio.file.Path getUserHomeFolder()
- Returns:
- The
Path
to the currently running user home - See Also:
setUserHomeFolderResolver(Supplier)
-
setUserHomeFolderResolver
public static void setUserHomeFolderResolver(java.util.function.Supplier<? extends java.nio.file.Path> resolver)
Set the reported value fromgetUserHomeFolder()
- Parameters:
resolver
- ThePath
provider to report - ifnull
then "user.home" system property will be used
-
appendUserHome
public static java.lang.StringBuilder appendUserHome(java.lang.StringBuilder sb)
-
appendUserHome
public static java.lang.StringBuilder appendUserHome(java.lang.StringBuilder sb, java.nio.file.Path userHome)
-
appendUserHome
public static java.lang.StringBuilder appendUserHome(java.lang.StringBuilder sb, java.lang.String userHome)
-
-