Class GDSServerVersion

  • All Implemented Interfaces:
    java.io.Serializable

    public final class GDSServerVersion
    extends java.lang.Object
    implements java.io.Serializable
    Object representing a Firebird server version. The version string is returned in response to the isc_info_firebird_version information call. Expected version format is:

    <platform>-<type><majorVersion>.<minorVersion>.<variant>.<buildNum>[-<revision>] <serverName>, and additional version string elements if present.

    where platform is a two-character platform identification string, Windows for example is "WI", type is one of the three characters: "V" - production version, "T" - beta version, "X" - development version.

    See Also:
    Serialized Form
    • Field Detail

      • TYPE_DEVELOPMENT

        public static final java.lang.String TYPE_DEVELOPMENT
        See Also:
        Constant Field Values
      • CONNECTION_OPTION_ENCRYPTED

        public static final java.lang.String CONNECTION_OPTION_ENCRYPTED
        See Also:
        Constant Field Values
      • CONNECTION_OPTION_COMPRESSION

        public static final java.lang.String CONNECTION_OPTION_COMPRESSION
        See Also:
        Constant Field Values
      • INVALID_VERSION

        public static final GDSServerVersion INVALID_VERSION
        GDSServerVersion that can be used as a dummy/invalid object when a version object is required, but none is available.
    • Method Detail

      • getBuildNumber

        public int getBuildNumber()
      • getMajorVersion

        public int getMajorVersion()
      • getMinorVersion

        public int getMinorVersion()
      • getPlatform

        public java.lang.String getPlatform()
      • getServerName

        public java.lang.String getServerName()
      • getType

        public java.lang.String getType()
      • getVariant

        public int getVariant()
      • getExtendedServerName

        public java.lang.String getExtendedServerName()
      • getFullVersion

        public java.lang.String getFullVersion()
      • getProtocolVersion

        public int getProtocolVersion()
        Returns:
        Protocol version of the connection, or -1 if this information is not available.
      • isWireEncryptionUsed

        public boolean isWireEncryptionUsed()
        Returns:
        true if encryption is used, false if no encryption is used or if this information is not available
      • isWireCompressionUsed

        public boolean isWireCompressionUsed()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • parseRawVersion

        public static GDSServerVersion parseRawVersion​(java.lang.String... versionStrings)
                                                throws GDSServerVersionException
        Parse the raw version string and create a GDSServerVersion object.
        Parameters:
        versionStrings - strings to parse, expects a non-empty array with at least 1, and usually 2 version strings
        Throws:
        GDSServerVersionException - if versionString does not match expected pattern
      • isEqualOrAbove

        public boolean isEqualOrAbove​(int requiredMajorVersion,
                                      int requiredMinorVersion)
        Convenience method to check if the major.minor of this version is equal to or larger than the specified required version.
        Parameters:
        requiredMajorVersion - Required major version
        requiredMinorVersion - Required minor version
        Returns:
        true when current major is larger than required, or major is same and minor is equal to or larger than required
      • isEqualOrAbove

        public boolean isEqualOrAbove​(int requiredMajorVersion,
                                      int requiredMinorVersion,
                                      int requiredVariant)
        Convenience method to check if the major.minor.variant of this version is equal to or larger than the specified required version.
        Parameters:
        requiredMajorVersion - Required major version
        requiredMinorVersion - Required minor version
        requiredVariant - Required variant version
        Returns:
        true when current major is larger than required, or major is same and minor is equal to required and variant equal to or larger than required, or major is same and minor is larger than required