Class Version

java.lang.Object
freemarker.template.Version
All Implemented Interfaces:
Serializable

public final class Version extends Object implements Serializable
Represents a version number plus the further qualifiers and build info. This is mostly used for representing a FreeMarker version number, but should also be able to parse the version strings of 3rd party libraries.
Since:
2.3.20
See Also:
Configuration.getVersion(), Serialized Form
  • Constructor Summary

    Constructors
    Constructor
    Description
    Version​(int intValue)
    Creates an object based on the int value that uses the same kind of encoding as intValue().
    Version​(int major, int minor, int micro)
     
    Version​(int major, int minor, int micro, String extraInfo, Boolean gaeCompatible, Date buildDate)
     
    Version​(String stringValue)
     
    Version​(String stringValue, Boolean gaeCompliant, Date buildDate)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    equals​(Object obj)
     
    Deprecated.
    Will always return null for the FreeMarker version, as we can't store the build date anymore in the jar, in order to have a reproducible build.
    The arbitrary string after the micro version number without leading dot, dash or underscore, like "RC03" in "2.4.0-RC03".
    int
    The 1st version number, like 1 in "1.2.3".
    int
    The 3rd version number, like 3 in "1.2.3".
    int
    The 2nd version number, like 2 in "1.2.3".
    int
     
    int
     
    static int
    intValueFor​(int major, int minor, int micro)
     
     
    Contains the major.minor.micor numbers and the extraInfo part, not the other information.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Version

      public Version(String stringValue)
      Throws:
      IllegalArgumentException - if the version string is malformed
    • Version

      public Version(String stringValue, Boolean gaeCompliant, Date buildDate)
      Throws:
      IllegalArgumentException - if the version string is malformed
    • Version

      public Version(int major, int minor, int micro)
    • Version

      public Version(int intValue)
      Creates an object based on the int value that uses the same kind of encoding as intValue().
      Since:
      2.3.24
    • Version

      public Version(int major, int minor, int micro, String extraInfo, Boolean gaeCompatible, Date buildDate)
  • Method Details

    • intValueFor

      public static int intValueFor(int major, int minor, int micro)
    • toString

      public String toString()
      Contains the major.minor.micor numbers and the extraInfo part, not the other information.
      Overrides:
      toString in class Object
    • getMajor

      public int getMajor()
      The 1st version number, like 1 in "1.2.3".
    • getMinor

      public int getMinor()
      The 2nd version number, like 2 in "1.2.3".
    • getMicro

      public int getMicro()
      The 3rd version number, like 3 in "1.2.3".
    • getExtraInfo

      public String getExtraInfo()
      The arbitrary string after the micro version number without leading dot, dash or underscore, like "RC03" in "2.4.0-RC03". This is usually a qualifier (RC, SNAPHOST, nightly, beta, etc) and sometimes build info (like date).
    • isGAECompliant

      public Boolean isGAECompliant()
      Returns:
      The Google App Engine compliance, or null.
    • getBuildDate

      public Date getBuildDate()
      Deprecated.
      Will always return null for the FreeMarker version, as we can't store the build date anymore in the jar, in order to have a reproducible build.
      Returns:
      The build date if known, or null.
    • intValue

      public int intValue()
      Returns:
      major * 1000000 + minor * 1000 + micro.
    • hashCode

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

      public boolean equals(Object obj)
      Overrides:
      equals in class Object