Package de.willuhn.jameica.system
Class Platform
- java.lang.Object
-
- de.willuhn.jameica.system.Platform
-
- Direct Known Subclasses:
PlatformMacOS
public class Platform extends java.lang.ObjectHilfsklasse, um Plattform-/OS-spezfisches Verhalten zu behandeln.
-
-
Field Summary
Fields Modifier and Type Field Description static intOS_FREEBSDKonstante fuer: FreeBSDstatic intOS_FREEBSD_64Konstante fuer: FreeBSD 64Bit.static intOS_LINUXKonstante fuer: Linux.static intOS_LINUX_64Konstante fuer: Linux 64Bitstatic intOS_MACKonstante fuer: Mac OS.static intOS_UNKNOWNKonstante fuer: Betriebssystem unbekannt.static intOS_WINDOWSKonstante fuer: Windows.static intOS_WINDOWS_64Konstante fuer: Windows 64Bit.protected java.io.Fileworkdir
-
Constructor Summary
Constructors Constructor Description Platform()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetDefaultWorkdir()Liefert das Default-Workdir, wenn kein abweichendes angegeben ist.static PlatformgetInstance()Liefert eine plattform-spezifische Instanz.intgetOS()Liefert das Betriebssystem.java.io.FilegetWorkdir()Liefert das Benutzerverzeichnis, in dem Jameica alle Daten speichert.static booleaninProgramDir(java.io.File f)Prueft, ob sich der angegebene Ordner oder die Datei innerhalb des Programmordners befindet.intmapSWTKey(int key)Mappt OS-spezifisch einzelne Keys auf andere.java.lang.StringmapSWTShortcut(java.lang.String shortcut)WiemapSWTKey(int), jedoch fuer String-Repraesentationen von Shortcuts.java.lang.StringtoAbsolute(java.lang.String path)Macht eine absolute Pfadangabe aus der Pfad- oder Datei basierend auf dem Jameica-Benutzerverzeichnis.java.lang.StringtoRelative(java.lang.String path)Versucht, die Pfad- oder Datei-Angabe basierend auf dem Jameica-Benutzerverzeichnis zu relativieren.
-
-
-
Field Detail
-
OS_UNKNOWN
public static final int OS_UNKNOWN
Konstante fuer: Betriebssystem unbekannt.- See Also:
- Constant Field Values
-
OS_LINUX
public static final int OS_LINUX
Konstante fuer: Linux.- See Also:
- Constant Field Values
-
OS_WINDOWS
public static final int OS_WINDOWS
Konstante fuer: Windows.- See Also:
- Constant Field Values
-
OS_MAC
public static final int OS_MAC
Konstante fuer: Mac OS.- See Also:
- Constant Field Values
-
OS_LINUX_64
public static final int OS_LINUX_64
Konstante fuer: Linux 64Bit- See Also:
- Constant Field Values
-
OS_WINDOWS_64
public static final int OS_WINDOWS_64
Konstante fuer: Windows 64Bit.- See Also:
- Constant Field Values
-
OS_FREEBSD
public static final int OS_FREEBSD
Konstante fuer: FreeBSD- See Also:
- Constant Field Values
-
OS_FREEBSD_64
public static final int OS_FREEBSD_64
Konstante fuer: FreeBSD 64Bit.- See Also:
- Constant Field Values
-
workdir
protected java.io.File workdir
-
-
Method Detail
-
getInstance
public static Platform getInstance()
Liefert eine plattform-spezifische Instanz.- Returns:
- Instanz.
-
inProgramDir
public static boolean inProgramDir(java.io.File f) throws java.io.IOExceptionPrueft, 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:
java.io.IOException- falls kein Zugriff auf das Dateiverzeichnis moeglich
-
getWorkdir
public java.io.File getWorkdir() throws java.lang.ExceptionLiefert 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.java.lang.Exception
-
getDefaultWorkdir
public java.lang.String 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
public java.lang.String toRelative(java.lang.String path)
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
public java.lang.String toAbsolute(java.lang.String path)
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
PlatformMacOSaber wird z.B. ALT gegen COMMAND ersetzt.- Parameters:
key- der Key.- Returns:
- der gemappte Key.
- See Also:
- willuhn/jameica#6
-
mapSWTShortcut
public java.lang.String mapSWTShortcut(java.lang.String shortcut)
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:
mapSWTKey(int)
-
-