Class GedcomxDateUtil

java.lang.Object
org.gedcomx.date.GedcomxDateUtil

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

    • parse

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

      public static GedcomxDateDuration getDuration(GedcomxDateSimple startDate, GedcomxDateSimple endDate)
      Calculates the Duration between two dates
      Parameters:
      startDate - The start date
      endDate - The end date
      Returns:
      The duration
    • addDuration

      public static GedcomxDateSimple addDuration(GedcomxDateSimple startDate, GedcomxDateDuration duration)
      Add a duration to a simple date
      Parameters:
      startDate - The date to start from
      duration - The duration to add
      Returns:
      a new simple date
    • 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

      @Deprecated(forRemoval=true) public static int daysInMonth(Integer month, Integer year)
      Deprecated, for removal: This API element is subject to removal in a future version.
      this method is just a pass through to java.time.YearMonth.lengthOfMonth
      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
    • 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.