InDateRange

See javadoc - uk.gov.gchq.koryphe.impl.predicate.range.InDateRange

Available since Koryphe version 1.1.0

You can configure the start and end time strings using the following formats:

  • timestamp in milliseconds
  • yyyy/MM
  • yyyy/MM/dd
  • yyyy/MM/dd HH
  • yyyy/MM/dd HH:mm
  • yyyy/MM/dd HH:mm:ss

You can use a space, '-', '/', '_', ':', '|', or '.' to separate the parts.

Examples

In date range with day precision

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .start("2017/01/01")
        .end("2017/02/01")
        .build();
{
  "class" : "InDateRange",
  "start" : "2017/01/01",
  "end" : "2017/02/01"
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "start" : "2017/01/01",
  "end" : "2017/02/01"
}
g.InDateRange( 
  start="2017/01/01", 
  end="2017/02/01" 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateFri Jan 01 00:00:00 UTC 2016false
java.util.DateSun Jan 01 00:00:00 UTC 2017true
java.util.DateSun Jan 01 01:00:00 UTC 2017true
java.util.DateSun Jan 01 23:59:59 UTC 2017true
java.util.DateWed Feb 01 00:00:00 UTC 2017true
java.util.DateWed Feb 01 00:00:01 UTC 2017false
nullfalse

In date range with second precision

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .start("2017/01/01 01:30:10")
        .end("2017/01/01 01:30:50")
        .build();
{
  "class" : "InDateRange",
  "start" : "2017/01/01 01:30:10",
  "end" : "2017/01/01 01:30:50"
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "start" : "2017/01/01 01:30:10",
  "end" : "2017/01/01 01:30:50"
}
g.InDateRange( 
  end="2017/01/01 01:30:50", 
  start="2017/01/01 01:30:10" 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateSun Jan 01 01:30:09 UTC 2017false
java.util.DateSun Jan 01 01:30:10 UTC 2017true
java.util.DateSun Jan 01 01:30:20 UTC 2017true
java.util.DateSun Jan 01 01:30:50 UTC 2017true
java.util.DateSun Jan 01 01:30:51 UTC 2017false
nullfalse

In date range with timestamps

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .start("1483315200")
        .end("1485907200")
        .build();
{
  "class" : "InDateRange",
  "start" : "1483315200",
  "end" : "1485907200"
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "start" : "1483315200",
  "end" : "1485907200"
}
g.InDateRange( 
  end="1485907200", 
  start="1483315200" 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateSun Jan 18 04:01:55 UTC 1970false
java.util.DateSun Jan 18 04:01:55 UTC 1970true
java.util.DateSun Jan 18 04:01:56 UTC 1970true
java.util.DateSun Jan 18 04:45:07 UTC 1970true
java.util.DateSun Jan 18 04:45:07 UTC 1970false
nullfalse

In date range exclusive

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .start("2017/01/01")
        .end("2017/02/01")
        .startInclusive(false)
        .endInclusive(false)
        .build();
{
  "class" : "InDateRange",
  "start" : "2017/01/01",
  "end" : "2017/02/01",
  "startInclusive" : false,
  "endInclusive" : false
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "start" : "2017/01/01",
  "end" : "2017/02/01",
  "startInclusive" : false,
  "endInclusive" : false
}
g.InDateRange( 
  end_inclusive=False, 
  end="2017/02/01", 
  start="2017/01/01", 
  start_inclusive=False 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateFri Jan 01 00:00:00 UTC 2016false
java.util.DateSun Jan 01 00:00:00 UTC 2017false
java.util.DateSun Jan 01 01:00:00 UTC 2017true
java.util.DateSun Jan 01 23:59:59 UTC 2017true
java.util.DateWed Feb 01 00:00:00 UTC 2017false
java.util.DateWed Feb 01 00:00:01 UTC 2017false
nullfalse

Within the last week

If the end of the range is not specified then the end of the range is unbounded.

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .startOffset(-7L)
                // end is not set - it is unbounded
        .offsetUnit(TimeUnit.DAY)
        .build();
{
  "class" : "InDateRange",
  "startOffset" : -7,
  "offsetUnit" : "DAY"
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "startOffset" : -7,
  "offsetUnit" : "DAY"
}
g.InDateRange( 
  offset_unit="DAY", 
  start_offset=-7 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateThu Feb 07 15:47:43 UTC 2019false
java.util.DateSat Feb 09 15:47:43 UTC 2019true
java.util.DateThu Feb 14 15:47:43 UTC 2019true
java.util.DateFri Feb 15 15:47:43 UTC 2019true
nullfalse

Exactly 7 hours ago

Java
JSON
Full JSON
Python
final InDateRange function = new InDateRange.Builder()
        .startOffset(-7L)
        .endOffset(-6L)
        .endInclusive(false)
        .offsetUnit(TimeUnit.HOUR)
        .build();
{
  "class" : "InDateRange",
  "startOffset" : -7,
  "endOffset" : -6,
  "endInclusive" : false,
  "offsetUnit" : "HOUR"
}
{
  "class" : "uk.gov.gchq.koryphe.impl.predicate.range.InDateRange",
  "startOffset" : -7,
  "endOffset" : -6,
  "endInclusive" : false,
  "offsetUnit" : "HOUR"
}
g.InDateRange( 
  offset_unit="HOUR", 
  end_offset=-6, 
  start_offset=-7, 
  end_inclusive=False 
)

Input type:

java.util.Date

Example inputs:

Input TypeInputResult
java.util.DateFri Feb 15 07:47:43 UTC 2019false
java.util.DateFri Feb 15 08:47:53 UTC 2019true
java.util.DateFri Feb 15 09:47:33 UTC 2019true
java.util.DateFri Feb 15 09:47:53 UTC 2019false
java.util.DateFri Feb 15 15:47:43 UTC 2019false
nullfalse

results matching ""

    No results matching ""