Enum CommonCRS.Temporal

  • All Implemented Interfaces:
    Serializable, Comparable<Common­CRS​.Temporal>
    Enclosing class:
    CommonCRS

    public static enum CommonCRS.Temporal
    extends Enum<CommonCRS.Temporal>
    Frequently-used temporal CRS and datum that are guaranteed to be available in SIS.

    Referencing objects are cached after creation. Invoking the same method on the same Temporal instance twice will return the same Identified­Object instance, unless the internal cache has been cleared (e.g. the application is running in a container environment and some modules have been installed or uninstalled).

    Example: the following code fetches a temporal Coordinate Reference System using the Julian calendar:

    TemporalCRS crs = CommonCRS.Temporal.JULIAN.crs();
    Below is an alphabetical list of object names available in this enumeration:
    Temporal objects accessible by enumeration constants
    Name or alias Object type Enumeration value
    Dublin Julian CRS, Datum DUBLIN_JULIAN
    Java time CRS JAVA
    Julian CRS, Datum JULIAN
    Modified Julian CRS, Datum MODIFIED_JULIAN
    Truncated Julian CRS, Datum TRUNCATED_JULIAN
    Unix/POSIX time CRS, Datum UNIX
    Since:
    0.4

    Defined in the sis-referencing module

    • Enum Constant Detail

      • JULIAN

        public static final CommonCRS.Temporal JULIAN
        Time measured as days since January 1st, 4713 BC at 12:00 UTC in proleptic Julian calendar. This epoch is equivalent to November 24, 4714 BC when expressed in the proleptic Gregorian calendar instead than the Julian one.

        Note on dates formatting: the legacy date/time formatting classes in the java​.text package uses the proleptic Julian calendar for dates before October 15, 1582, while the new date/time formatting classes in the java​.time​.format package use the ISO-8601 calendar system, which is equivalent to the proleptic Gregorian calendar for every dates. For parsing and formatting of Julian days, the Simple­Date­Format class is closer to the common practice (but not ISO 8601 compliant).

      • MODIFIED_JULIAN

        public static final CommonCRS.Temporal MODIFIED_JULIAN
        Time measured as days since November 17, 1858 at 00:00 UTC. A Modified Julian day (MJD) is defined relative to Julian day (JD) as MJD = JD − 2400000.5.
      • TRUNCATED_JULIAN

        public static final CommonCRS.Temporal TRUNCATED_JULIAN
        Time measured as days since May 24, 1968 at 00:00 UTC. This epoch was introduced by NASA for the space program. A Truncated Julian day (TJD) is defined relative to Julian day (JD) as TJD = JD − 2440000.5.
      • DUBLIN_JULIAN

        public static final CommonCRS.Temporal DUBLIN_JULIAN
        Time measured as days since December 31, 1899 at 12:00 UTC. A Dublin Julian day (DJD) is defined relative to Julian day (JD) as DJD = JD − 2415020.
      • UNIX

        public static final CommonCRS.Temporal UNIX
        Time measured as seconds since January 1st, 1970 at 00:00 UTC.
      • JAVA

        public static final CommonCRS.Temporal JAVA
        Time measured as milliseconds since January 1st, 1970 at 00:00 UTC.
    • Method Detail

      • values

        public static CommonCRS.Temporal[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (CommonCRS.Temporal c : CommonCRS.Temporal.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static CommonCRS.Temporal valueOf​(String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
        Illegal­Argument­Exception - if this enum type has no constant with the specified name
        Null­Pointer­Exception - if the argument is null
      • forEpoch

        public static CommonCRS.Temporal forEpoch​(Instant epoch)
        Returns the enumeration value for the given epoch, or null if none. If the epoch is January 1st, 1970, then this method returns UNIX.
        Parameters:
        epoch - the epoch for which to get an enumeration value, or null.
        Returns:
        the enumeration value for the given epoch, or null if none.
        Since:
        1.0
      • crs

        public TemporalCRS crs()
        Returns the coordinate reference system associated to this temporal object. The following table summarizes the CRS known to this class, together with an enumeration value that can be used for fetching that CRS:
        Commonly used temporal CRS
        Name or alias Enum
        Dublin Julian DUBLIN_JULIAN
        Julian JULIAN
        Modified Julian MODIFIED_JULIAN
        Truncated Julian TRUNCATED_JULIAN
        Unix/POSIX or Java UNIX
        Returns:
        the CRS associated to this enum.
        See Also:
        Default­Temporal­CRS
      • datum

        public TemporalDatum datum()
        Returns the datum associated to this temporal object. The following table summarizes the datum known to this class, together with an enumeration value that can be used for fetching that datum:
        Commonly used temporal datum
        Name or alias Enum
        Dublin Julian DUBLIN_JULIAN
        Julian JULIAN
        Modified Julian MODIFIED_JULIAN
        Truncated Julian TRUNCATED_JULIAN
        Unix/POSIX or Java UNIX
        Returns:
        the datum associated to this enum.
        See Also:
        Default­Temporal­Datum