Class GedcomxDateUtil


  • public class GedcomxDateUtil
    extends Object
    Static utility functions for handling GedcomX Dates
    Author:
    John Clark.
    • Method Detail

      • parse

        public static GedcomxDate parse​(String date)
        Parse a String representation of a Formal GedcomX Date
        Parameters:
        date - The GedcomX Date
        Returns:
        A GedcomxDate
      • multiplyDuration

        public static GedcomxDateDuration multiplyDuration​(GedcomxDateDuration duration,
                                                           int multiplier)
        Multiple a duration by a fixed number
        Parameters:
        duration - The duration to multiply
        multiplier - The amount to multiply by
        Returns:
        The new, multiplied duration
      • daysInMonth

        public static int daysInMonth​(Integer month,
                                      Integer year)
        Find the number of days in a month within a given year
        Parameters:
        month - The month
        year - The year
        Returns:
        The number of days in the month
      • zipDates

        protected static void zipDates​(GedcomxDateUtil.Date start,
                                       GedcomxDateUtil.Date end)
        Ensures that both start and end have values where the other has values. For example, if start has minutes but end does not, this function will initialize minutes in end.
        Parameters:
        start - The start date
        end - The end date
      • zipDuration

        protected static void zipDuration​(GedcomxDateUtil.Date date,
                                          GedcomxDateDuration duration)
        Ensures that date has its properties initialized based on what the duration has. For example, if date does not have minutes and duration does, this will initialize minutes in the date.
        Parameters:
        date - The start date
        duration - The duration
      • javaDateToGedcomxDateSimple

        public static GedcomxDateSimple javaDateToGedcomxDateSimple​(Date javaDate)
        Converts a java.util.Date to a GedcomxDate object. The returned GedcomxDate will always be represented as UTC since java.util.Date does not have locale information and is defaulted to represent UTC.
        Parameters:
        javaDate - The java.util.Date object to convert.
        Returns:
        a GedcomxDate representing the CE javaDate.
      • javaDatesToGedcomxDateRange

        public static GedcomxDateRange javaDatesToGedcomxDateRange​(Date fromDate,
                                                                   Date toDate)
        Converts two java.util.Date objects to a GedcomxDateRange object. If toDate is null then the GedcomxDateRange will be an open-ended range. The fromDate and toDate will both be UTC since that is what a java.util.Date object represents.
        Parameters:
        fromDate - the start of the range. This cannot be null.
        toDate - the end of the range. This may be null.
        Returns:
        a GedcomxDateRange that represents the range between the fromDate and toDate
        Throws:
        GedcomxDateException - if fromDate is null.