Enum Class ServerVersion

java.lang.Object
java.lang.Enum<ServerVersion>
org.postgresql.core.ServerVersion
All Implemented Interfaces:
Serializable, Comparable<ServerVersion>, Constable, Version

public enum ServerVersion extends Enum<ServerVersion> implements Version
Enumeration for PostgreSQL versions.
  • Enum Constant Details

  • Field Details

    • version

      private final int version
  • Constructor Details

    • ServerVersion

      private ServerVersion(String version)
  • Method Details

    • values

      public static ServerVersion[] 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 ServerVersion 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
    • getVersionNum

      public int getVersionNum()
      Get a machine-readable version number.
      Specified by:
      getVersionNum in interface Version
      Returns:
      the version in numeric XXYYZZ form, e.g. 90401 for 9.4.1
    • from

      public static Version from(String version)

      Attempt to parse the server version string into an XXYYZZ form version number into a Version.

      If the specified version cannot be parsed, the Version.getVersionNum() will return 0.

      Parameters:
      version - version in numeric XXYYZZ form, e.g. "090401" for 9.4.1
      Returns:
      a Version representing the specified version string.
    • parseServerVersionStr

      static int parseServerVersionStr(String serverVersion) throws NumberFormatException

      Attempt to parse the server version string into an XXYYZZ form version number.

      Returns 0 if the version could not be parsed.

      Returns minor version 0 if the minor version could not be determined, e.g. devel or beta releases.

      If a single major part like 90400 is passed, it's assumed to be a pre-parsed version and returned verbatim. (Anything equal to or greater than 10000 is presumed to be this form).

      The yy or zz version parts may be larger than 99. A NumberFormatException is thrown if a version part is out of range.

      Parameters:
      serverVersion - server vertion in a XXYYZZ form
      Returns:
      server version in number form
      Throws:
      NumberFormatException