java.lang.Object
java.lang.Enum<Platform>
ushiosan.jvm_utilities.system.Platform
All Implemented Interfaces:
Serializable, Comparable<Platform>, java.lang.constant.Constable

public enum Platform extends Enum<Platform>
Enumerated type for identification of the operating system on which the JVM is running.
  • Enum Constant Details

    • FREE_BSD

      public static final Platform FREE_BSD
      Free BSD operating system family
    • LINUX

      public static final Platform LINUX
      Linux operating system family (distros)
    • MACOS

      public static final Platform MACOS
      Mac operating system family (IOS not supported)
    • SOLARIS

      public static final Platform SOLARIS
      Solaris operating system family
    • WINDOWS

      public static final Platform WINDOWS
      Windows operating system family
    • UNKNOWN

      public static final Platform UNKNOWN
      Unknown platform. Used only to represent an error
  • Method Details

    • values

      public static Platform[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static Platform valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getRunningPlatform

      public static Platform getRunningPlatform()
      Returns the current platform where the JVM is running
      Returns:
      Returns the platform where the JVM runs or UNKNOWN if the platform is not listed
    • isUnix

      public boolean isUnix()
      Determine if current platform is a UNIX like operating system

      Example:

      
       Platform current = Platform.getRunningPlatform();
       // Check if is a unix-like platform
       boolean result = current.isUnix();
       
      Returns:
      true if platform is unix-like or false otherwise
    • getPlatformName

      @Contract(pure=true) @NotNull public @NotNull String getPlatformName()
      Get current platform name
      Returns:
      current platform name or Unknown if the platform is UNKNOWN
    • getVersion

      public Optional<String> getVersion()
      Get current platform version
      Returns:
      current platform version or Optional.empty() if the platform is UNKNOWN
    • toString

      @NotNull public @NotNull String toString()
      Object string representation
      Overrides:
      toString in class Enum<Platform>
      Returns:
      object string representation