Class JavaDateMathParser

java.lang.Object
org.elasticsearch.common.time.JavaDateMathParser
All Implemented Interfaces:
DateMathParser

public class JavaDateMathParser
extends java.lang.Object
implements DateMathParser
A parser for date/time formatted text with optional date math. The format of the datetime is configurable, and unix timestamps can also be used. Datemath is appended to a datetime with the following syntax: ||[+-/](\d+)?[yMwdhHms].
  • Method Summary

    Modifier and Type Method Description
    java.time.Instant parse​(java.lang.String text, java.util.function.LongSupplier now, boolean roundUpProperty, java.time.ZoneId timeZone)
    Parse text, that potentially contains date math into the milliseconds since the epoch Examples are 2014-11-18||-2y subtracts two years from the input date now/m rounds the current time to minute granularity Supported rounding units are y year M month w week (beginning on a monday) d day h/H hour m minute s second

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.elasticsearch.common.time.DateMathParser

    parse, parse
  • Method Details

    • parse

      public java.time.Instant parse​(java.lang.String text, java.util.function.LongSupplier now, boolean roundUpProperty, java.time.ZoneId timeZone)
      Description copied from interface: DateMathParser
      Parse text, that potentially contains date math into the milliseconds since the epoch Examples are 2014-11-18||-2y subtracts two years from the input date now/m rounds the current time to minute granularity Supported rounding units are y year M month w week (beginning on a monday) d day h/H hour m minute s second
      Specified by:
      parse in interface DateMathParser
      Parameters:
      text - the input
      now - a supplier to retrieve the current date in milliseconds, if needed for additions
      roundUpProperty - should the result be rounded up with the granularity of the rounding (e.g. now/M)
      timeZone - an optional timezone that should be applied before returning the milliseconds since the epoch
      Returns:
      the parsed date as an Instant since the epoch