Class Platform

java.lang.Object
de.willuhn.jameica.system.Platform
Direct Known Subclasses:
PlatformMacOS

public class Platform extends Object
Hilfsklasse, um Plattform-/OS-spezfisches Verhalten zu behandeln.
  • Field Details

    • OS_UNKNOWN

      public static final int OS_UNKNOWN
      Konstante fuer: Betriebssystem unbekannt.
      See Also:
    • OS_LINUX

      public static final int OS_LINUX
      Konstante fuer: Linux.
      See Also:
    • OS_WINDOWS

      public static final int OS_WINDOWS
      Konstante fuer: Windows.
      See Also:
    • OS_MAC

      public static final int OS_MAC
      Konstante fuer: Mac OS.
      See Also:
    • OS_LINUX_64

      public static final int OS_LINUX_64
      Konstante fuer: Linux 64Bit
      See Also:
    • OS_WINDOWS_64

      public static final int OS_WINDOWS_64
      Konstante fuer: Windows 64Bit.
      See Also:
    • OS_FREEBSD

      public static final int OS_FREEBSD
      Konstante fuer: FreeBSD
      See Also:
    • OS_FREEBSD_64

      public static final int OS_FREEBSD_64
      Konstante fuer: FreeBSD 64Bit.
      See Also:
    • workdir

      protected File workdir
  • Constructor Details

    • Platform

      public Platform()
  • Method Details

    • getInstance

      public static Platform getInstance()
      Liefert eine plattform-spezifische Instanz.
      Returns:
      Instanz.
    • inProgramDir

      public static boolean inProgramDir(File f) throws IOException
      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

      public File getWorkdir() throws Exception
      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

      public 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 Konstanten Platform.OS_*.
      Returns:
      Betriebssystem.
    • toRelative

      public String toRelative(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 String toAbsolute(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 PlatformMacOS aber wird z.B. ALT gegen COMMAND ersetzt.

      Parameters:
      key - der Key.
      Returns:
      der gemappte Key.
      See Also:
    • mapSWTShortcut

      public String mapSWTShortcut(String shortcut)
      Wie mapSWTKey(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: