Interface Window<T>

  • Type Parameters:
    T - the type of event that this window contains. E.g. Tuple
    All Known Subinterfaces:
    TupleWindow
    All Known Implementing Classes:
    TupleWindowImpl

    public interface Window<T>
    A view of events in a sliding window.
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      List<T> get()
      Gets the list of events in the window.
      Long getEndTimestamp()
      If processing based on event time, returns the window end time based on watermark otherwise returns the window end time based on processing time.
      List<T> getExpired()
      Get the list of events expired from the window since the last time the window was generated.
      default Iterator<T> getIter()
      Returns an iterator over the events in the window.
      List<T> getNew()
      Get the list of newly added events in the window since the last time the window was generated.
      Long getStartTimestamp()
      Returns the window start timestamp.
    • Method Detail

      • get

        List<T> get()
        Gets the list of events in the window.

        Note: If the number of tuples in windows is huge, invoking get would load all the tuples into memory and may throw an OOM exception. Use windowing with persistence

        Returns:
        the list of events in the window.
      • getIter

        default Iterator<T> getIter()
        Returns an iterator over the events in the window.
        Returns:
        an Iterator over the events in the current window.
      • getNew

        List<T> getNew()
        Get the list of newly added events in the window since the last time the window was generated.
        Returns:
        the list of newly added events in the window.
      • getExpired

        List<T> getExpired()
        Get the list of events expired from the window since the last time the window was generated.
        Returns:
        the list of events expired from the window.
      • getEndTimestamp

        Long getEndTimestamp()
        If processing based on event time, returns the window end time based on watermark otherwise returns the window end time based on processing time.
        Returns:
        the window end timestamp
      • getStartTimestamp

        Long getStartTimestamp()
        Returns the window start timestamp. Will return null if the window length is not based on time duration.
        Returns:
        the window start timestamp or null if the window length is not time based