public class PlatformHookUnixoid extends java.lang.Object implements PlatformHook
PlatformHook
base implementation.
Don't write (Main.platform instanceof PlatformHookUnixoid) because other platform
hooks are subclasses of this class.Modifier and Type | Class and Description |
---|---|
protected static class |
PlatformHookUnixoid.LinuxReleaseInfo |
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
osDescription |
Constructor and Description |
---|
PlatformHookUnixoid() |
Modifier and Type | Method and Description |
---|---|
protected void |
askUpdateJava(java.lang.String version,
java.lang.String url) |
protected java.lang.String |
buildOSDescription() |
java.lang.String |
getAtkWrapperPackageDetails()
Get the Gnome ATK wrapper package name including detailed version.
|
java.io.File |
getDefaultCacheDirectory()
Returns the platform-dependent default cache directory.
|
java.io.File |
getDefaultPrefDirectory()
Returns the platform-dependent default preferences directory.
|
java.lang.String |
getDefaultStyle()
Returns the default LAF to be used on this platform to look almost as a native application.
|
java.io.File |
getDefaultUserDataDirectory()
Returns the platform-dependent default user data directory.
|
private static java.io.File |
getDotDirectory()
Get the dot directory
~/.josm . |
java.lang.String |
getJavaPackageDetails()
Get the Java package name including detailed version.
|
java.lang.String |
getOSDescription()
Returns a detailed OS description (at least family + version).
|
static java.lang.String |
getPackageDetails(java.lang.String... packageNames)
Get the package name including detailed version.
|
java.lang.String |
getWebStartPackageDetails()
Get the Web Start package name including detailed version.
|
void |
initSystemShortcuts()
The initSystemShortcuts hook will be called by the
Shortcut class after the modifier groups have been read
from the config, but before any shortcuts are read from
it or registered from within the application.
|
static boolean |
isDebianOrUbuntu()
Determines if the distribution is Debian or Ubuntu, or a derivative.
|
static boolean |
isOpenJDK()
Determines if the JVM is OpenJDK-based.
|
void |
openUrl(java.lang.String url)
The openURL hook will be used to open an URL in the
default web browser.
|
void |
preStartupHook()
The preStartupHook will be called extremly early.
|
private boolean |
useDotDirectory()
Returns true if the dot directory should be used for storing preferences,
cache and user data.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
afterPrefStartupHook, canFullscreen, makeTooltip, rename, setupHttpsCertificate, startupHook
private java.lang.String osDescription
public PlatformHookUnixoid()
public void preStartupHook()
PlatformHook
preStartupHook
in interface PlatformHook
public void openUrl(java.lang.String url) throws java.io.IOException
PlatformHook
openUrl
in interface PlatformHook
url
- The URL to openjava.io.IOException
- if any I/O error occurspublic void initSystemShortcuts()
PlatformHook
initSystemShortcuts
in interface PlatformHook
public java.lang.String getDefaultStyle()
PlatformHook
getDefaultStyle
in interface PlatformHook
public static boolean isDebianOrUbuntu()
true
if the distribution is Debian, Ubuntu or Mint, false
otherwisepublic static boolean isOpenJDK()
true
if java.home
contains "openjdk", false
otherwisepublic static java.lang.String getPackageDetails(java.lang.String... packageNames)
packageNames
- The possible package names (when a package can have different names on different distributions)public java.lang.String getJavaPackageDetails()
public java.lang.String getWebStartPackageDetails()
null
if there's no separate package for Java WebStart.public java.lang.String getAtkWrapperPackageDetails()
null
if it's not found.protected java.lang.String buildOSDescription()
public java.lang.String getOSDescription()
PlatformHook
getOSDescription
in interface PlatformHook
protected void askUpdateJava(java.lang.String version, java.lang.String url)
private static java.io.File getDotDirectory()
~/.josm
.private boolean useDotDirectory()
public java.io.File getDefaultCacheDirectory()
PlatformHook
getDefaultCacheDirectory
in interface PlatformHook
public java.io.File getDefaultPrefDirectory()
PlatformHook
getDefaultPrefDirectory
in interface PlatformHook
public java.io.File getDefaultUserDataDirectory()
PlatformHook
getDefaultUserDataDirectory
in interface PlatformHook