Package de.willuhn.jameica.system
Class Platform
java.lang.Object
de.willuhn.jameica.system.Platform
- Direct Known Subclasses:
PlatformMacOS
Hilfsklasse, um Plattform-/OS-spezfisches Verhalten zu behandeln.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Konstante fuer: FreeBSDstatic final int
Konstante fuer: FreeBSD 64Bit.static final int
Konstante fuer: Linux.static final int
Konstante fuer: Linux 64Bitstatic final int
Konstante fuer: Mac OS.static final int
Konstante fuer: Betriebssystem unbekannt.static final int
Konstante fuer: Windows.static final int
Konstante fuer: Windows 64Bit.protected File
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionLiefert das Default-Workdir, wenn kein abweichendes angegeben ist.static Platform
Liefert eine plattform-spezifische Instanz.int
getOS()
Liefert das Betriebssystem.Liefert das Benutzerverzeichnis, in dem Jameica alle Daten speichert.static boolean
inProgramDir
(File f) Prueft, ob sich der angegebene Ordner oder die Datei innerhalb des Programmordners befindet.int
mapSWTKey
(int key) Mappt OS-spezifisch einzelne Keys auf andere.mapSWTShortcut
(String shortcut) WiemapSWTKey(int)
, jedoch fuer String-Repraesentationen von Shortcuts.toAbsolute
(String path) Macht eine absolute Pfadangabe aus der Pfad- oder Datei basierend auf dem Jameica-Benutzerverzeichnis.toRelative
(String path) Versucht, die Pfad- oder Datei-Angabe basierend auf dem Jameica-Benutzerverzeichnis zu relativieren.
-
Field Details
-
OS_UNKNOWN
public static final int OS_UNKNOWNKonstante fuer: Betriebssystem unbekannt.- See Also:
-
OS_LINUX
public static final int OS_LINUXKonstante fuer: Linux.- See Also:
-
OS_WINDOWS
public static final int OS_WINDOWSKonstante fuer: Windows.- See Also:
-
OS_MAC
public static final int OS_MACKonstante fuer: Mac OS.- See Also:
-
OS_LINUX_64
public static final int OS_LINUX_64Konstante fuer: Linux 64Bit- See Also:
-
OS_WINDOWS_64
public static final int OS_WINDOWS_64Konstante fuer: Windows 64Bit.- See Also:
-
OS_FREEBSD
public static final int OS_FREEBSDKonstante fuer: FreeBSD- See Also:
-
OS_FREEBSD_64
public static final int OS_FREEBSD_64Konstante fuer: FreeBSD 64Bit.- See Also:
-
workdir
-
-
Constructor Details
-
Platform
public Platform()
-
-
Method Details
-
getInstance
Liefert eine plattform-spezifische Instanz.- Returns:
- Instanz.
-
inProgramDir
Prueft, ob sich der angegebene Ordner oder die Datei innerhalb des Programmordners befindet.- Parameters:
f
- der zu pruefende Ordner oder die Datei.- Returns:
true
, wenn sich der Ordner oder die Datei im Programmordner befindet.- Throws:
IOException
- falls kein Zugriff auf das Dateiverzeichnis moeglich
-
getWorkdir
Liefert das Benutzerverzeichnis, in dem Jameica alle Daten speichert. Falls es noch nicht existiert, wird es automatisch angelegt.- Returns:
- Benutzerverzeichnis.
- Throws:
de.willuhn.util.ApplicationException
- wenn das Benutzerverzeichnis nicht lesbar ist oder nicht erstellt werden konnte.Exception
-
getDefaultWorkdir
Liefert das Default-Workdir, wenn kein abweichendes angegeben ist.- Returns:
- das Default-Workdir.
-
getOS
public int getOS()Liefert das Betriebssystem. Siehe dazu die KonstantenPlatform.OS_*
.- Returns:
- Betriebssystem.
-
toRelative
Versucht, die Pfad- oder Datei-Angabe basierend auf dem Jameica-Benutzerverzeichnis zu relativieren. Falls es sich nicht um eine relative Pfadangabe innerhalb des Benutzerverzeichnisses handelt, wird der Pfad unveraendert zurueckgeliefert.- Parameters:
path
- der Pfad oder die Datei.- Returns:
- die relativierte Angabe oder der originale Pfad.
-
toAbsolute
Macht eine absolute Pfadangabe aus der Pfad- oder Datei basierend auf dem Jameica-Benutzerverzeichnis. Falls es sich bereits um eine absolute Pfadangabe handelt, wird der Pfad unveraendert zurueckgegeben.- Parameters:
path
- er Pfad.- Returns:
- die absolute Angabe oder der originale Pfad.
-
mapSWTKey
public int mapSWTKey(int key) Mappt OS-spezifisch einzelne Keys auf andere.In der Default-Implementierung wird hier 1:1 der Eingabewert zurueckgegeben. In
PlatformMacOS
aber wird z.B. ALT gegen COMMAND ersetzt.- Parameters:
key
- der Key.- Returns:
- der gemappte Key.
- See Also:
-
mapSWTShortcut
WiemapSWTKey(int)
, jedoch fuer String-Repraesentationen von Shortcuts. Parameter ist z.Bsp. "ALT+S". Auf macOS wird das auf "CMD+S" gemappt.- Parameters:
shortcut
- der Shortcut.- Returns:
- der gemappte Shortcut.
- See Also:
-