def assign(self, context): timestamp = context.timestamp start = timestamp - (timestamp - self.offset) % self.period return [IntervalWindow(Timestamp.of(s), Timestamp.of(s) + self.size) for s in range(start, start - self.size, -self.period)]
def __init__(self, timestamp, element=None): self.timestamp = Timestamp.of(timestamp) self.element = element
def __init__(self, value, timestamp): self.value = value self.timestamp = Timestamp.of(timestamp)
def __init__(self, size, period, offset=0): if size <= 0: raise ValueError('The size parameter must be strictly positive.') self.size = Duration.of(size) self.period = Duration.of(period) self.offset = Timestamp.of(offset) % size
def __init__(self, end): self.end = Timestamp.of(end)
def __init__(self, start, end): super(IntervalWindow, self).__init__(end) self.start = Timestamp.of(start)
def from_runner_api_parameter(fn_parameter, unused_context): return SlidingWindows( size=Duration(micros=fn_parameter['size']), offset=Timestamp(micros=fn_parameter['offset']), period=Duration(micros=fn_parameter['period']))
def test_timestamps(self): wv = windowed_value.WindowedValue(None, 3, ()) self.assertEqual(wv.timestamp, Timestamp.of(3)) self.assertTrue(wv.timestamp is wv.timestamp) self.assertEqual(windowed_value.WindowedValue(None, -2.5, ()).timestamp, Timestamp.of(-2.5))
def __init__(self, size, period, offset=0): if size <= 0: raise ValueError('The size parameter must be strictly positive.') self.size = Duration.of(size) self.period = Duration.of(period) self.offset = Timestamp.of(offset) % period
def __init__(self, value, timestamp): self.value = value self.timestamp = Timestamp.of(timestamp)
def __init__(self, start, end): super(IntervalWindow, self).__init__(end) self.start = Timestamp.of(start)
def __init__(self, end): self.end = Timestamp.of(end)
def __init__(self, timestamp, element=None): self.timestamp = Timestamp.of(timestamp) self.element = element