예제 #1
0
파일: base.py 프로젝트: zcsh/faust
 def _relative_now(self, event: EventT = None) -> float:
     # get current timestamp
     event = event if event is not None else current_event()
     if event is None:
         return time.time()
     return self._partition_latest_timestamp[event.message.partition]
예제 #2
0
파일: base.py 프로젝트: zcsh/faust
 def _relative_event(self, event: EventT = None) -> float:
     event = event if event is not None else current_event()
     # get event timestamp
     if event is None:
         raise RuntimeError('Operation outside of stream iteration')
     return event.message.timestamp
예제 #3
0
 def values(self, event: EventT = None) -> ValuesView:
     """Return table values view: iterate over values in this table."""
     return WindowedValuesView(self, event or current_event())
예제 #4
0
 def items(self, event: EventT = None) -> ItemsView:
     """Return table items view: iterate over ``(key, value)`` pairs."""
     return WindowedItemsView(self, event or current_event())
예제 #5
0
 def __getitem__(self, key: Any) -> WindowSetT:
     return self.ValueType(key, self.table, self, current_event())
예제 #6
0
 def send_changelog_event(self, key: Any, operation: int,
                          value: Any) -> None:
     """Send changelog event to the tables changelog topic."""
     event = current_event()
     self._dirty.add(key)
     self.table._send_changelog(event, (operation, key), value)
예제 #7
0
 def items(self, event: EventT = None) -> ItemsView:
     return WindowedItemsView(self, event or current_event())
예제 #8
0
 def values(self, event: EventT = None) -> ValuesView:
     return WindowedValuesView(self, event or current_event())
예제 #9
0
 def send_changelog_event(self, key: Any, operation: int,
                          value: Any) -> None:
     event = current_event()
     self._dirty.add(key)
     self.table._send_changelog(event, (operation, key), value)