public final class OsUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private static java.util.concurrent.atomic.AtomicReference<java.lang.String> |
CURRENT_USER_HOLDER |
static java.lang.String |
CURRENT_USER_OVERRIDE_PROP
Property that can be used to override the reported value from
getCurrentUser() . |
private static java.util.concurrent.atomic.AtomicReference<VersionInfo> |
JAVA_VERSION_HOLDER |
static java.lang.String |
JAVA_VERSION_OVERRIDE_PROP
Property that can be used to override the reported value from
getJavaVersion() . |
static java.util.List<java.lang.String> |
LINUX_COMMAND |
static java.lang.String |
LINUX_SHELL_COMMAND_NAME |
private static java.util.concurrent.atomic.AtomicReference<java.lang.String> |
OS_TYPE_HOLDER |
static java.lang.String |
OS_TYPE_OVERRIDE_PROP
Property that can be used to override the reported value from
isWin32() . |
static java.lang.String |
ROOT_USER |
static java.util.List<java.lang.String> |
WINDOWS_COMMAND |
static java.lang.String |
WINDOWS_SHELL_COMMAND_NAME |
Modifier | Constructor and Description |
---|---|
private |
OsUtils() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
getCanonicalUser(java.lang.String user)
Remove
Windows domain and/or group prefix as well as "(User);" suffix |
static java.lang.String |
getComparablePath(java.lang.String path) |
static java.lang.String |
getCurrentUser()
Get current user name
|
static VersionInfo |
getJavaVersion()
Resolves the reported Java version by consulting
JAVA_VERSION_OVERRIDE_PROP . |
private static java.lang.String |
getOS()
Retrieve the OS
|
static boolean |
isOSX() |
static boolean |
isUNIX() |
static boolean |
isWin32() |
static java.lang.String |
resolveCanonicalGroup(java.lang.String group,
java.lang.String user)
Attempts to resolve canonical group name for
Windows |
static java.util.List<java.lang.String> |
resolveDefaultInteractiveCommandElements() |
static java.util.List<java.lang.String> |
resolveDefaultInteractiveCommandElements(boolean winOS) |
static java.lang.String |
resolveDefaultInteractiveShellCommand() |
static java.lang.String |
resolveDefaultInteractiveShellCommand(boolean winOS) |
static void |
setCurrentUser(java.lang.String username)
Can be used to programmatically set the username reported by
getCurrentUser() |
static void |
setJavaVersion(VersionInfo version)
Set programmatically the reported Java version
|
static void |
setOS(java.lang.String os)
|
public static final java.lang.String CURRENT_USER_OVERRIDE_PROP
getCurrentUser()
. If not set then
"user.name" system property is usedpublic static final java.lang.String JAVA_VERSION_OVERRIDE_PROP
getJavaVersion()
. If not set then
"java.version" system property is usedpublic static final java.lang.String OS_TYPE_OVERRIDE_PROP
isWin32()
. If not set then
"os.name" system property is usedpublic static final java.lang.String WINDOWS_SHELL_COMMAND_NAME
public static final java.lang.String LINUX_SHELL_COMMAND_NAME
public static final java.lang.String ROOT_USER
public static final java.util.List<java.lang.String> LINUX_COMMAND
public static final java.util.List<java.lang.String> WINDOWS_COMMAND
private static final java.util.concurrent.atomic.AtomicReference<java.lang.String> CURRENT_USER_HOLDER
private static final java.util.concurrent.atomic.AtomicReference<VersionInfo> JAVA_VERSION_HOLDER
private static final java.util.concurrent.atomic.AtomicReference<java.lang.String> OS_TYPE_HOLDER
public static boolean isUNIX()
public static boolean isOSX()
public static boolean isWin32()
OS_TYPE_OVERRIDE_PROP
,
setOS(String)
public static void setOS(java.lang.String os)
private static java.lang.String getOS()
public static java.lang.String resolveDefaultInteractiveShellCommand()
public static java.lang.String resolveDefaultInteractiveShellCommand(boolean winOS)
public static java.util.List<java.lang.String> resolveDefaultInteractiveCommandElements()
public static java.util.List<java.lang.String> resolveDefaultInteractiveCommandElements(boolean winOS)
public static java.lang.String getCurrentUser()
CURRENT_USER_OVERRIDE_PROP
public static java.lang.String getCanonicalUser(java.lang.String user)
Windows
domain and/or group prefix as well as "(User);" suffixuser
- The original username - ignored if null
/emptyUnix
O/Spublic static java.lang.String resolveCanonicalGroup(java.lang.String group, java.lang.String user)
Windows
group
- The original group name - used if not null
/emptyuser
- The owner name - sometimes it contains a group namepublic static void setCurrentUser(java.lang.String username)
getCurrentUser()
username
- The username to set - if null
then CURRENT_USER_OVERRIDE_PROP
will be consultedpublic static VersionInfo getJavaVersion()
JAVA_VERSION_OVERRIDE_PROP
. If not set, then
"java.version" property is usedVersionInfo
- never null
setJavaVersion(VersionInfo)
public static void setJavaVersion(VersionInfo version)
version
- The version - if null
then it will be automatically resolvedpublic static java.lang.String getComparablePath(java.lang.String path)
path
- The original pathnull