Gaffer icon indicating copy to clipboard operation
Gaffer copied to clipboard

MaskTimestampSetByTimeRange is not flexible

Open d47853 opened this issue 5 years ago • 0 comments

MaskTimestampSetByTimeRange only accepts Longs as input. It should be able to use any Number implementation.

This would change how the current time range is json serialised:

{
    "startTime": 20,
    "endTime": 30
}

It should generate 20 and 30 as Integers, rather than Longs. To specify Longs, you would have to wrap the value:

{
    "startTime": {
        "java.lang.Long": 20
    },
    "endTime": {
        "java.lang.Long": 30
    }
}

As we are dealing with timestamps there is a high chance that they will be outside the range of integers (especially if they are given in smaller time units). In the event this happens, the function should deserialise the value as a long. If this is not handled, it will be a breaking change and will therefore have to wait for v2.0.0 to be implemented.

d47853 avatar Jun 11 '19 09:06 d47853