Class WindowMappingFn<TargetWindowT extends BoundedWindow>

  • All Implemented Interfaces:
    java.io.Serializable

    @Experimental
    public abstract class WindowMappingFn<TargetWindowT extends BoundedWindow>
    extends java.lang.Object
    implements java.io.Serializable
    Experimental! This will be ready for users eventually, but should be considered internal for now. No backwards compatibility guarantees.

    A function that takes the windows of elements in a main input and maps them to the appropriate window in a PCollectionView consumed as a side input.

    See Also:
    Serialized Form
    • Constructor Detail

      • WindowMappingFn

        protected WindowMappingFn()
        Create a new WindowMappingFn with zero maximum lookback.
      • WindowMappingFn

        protected WindowMappingFn​(org.joda.time.Duration maximumLookback)
        Create a new WindowMappingFn with the specified maximum lookback.
    • Method Detail

      • getSideInputWindow

        public abstract TargetWindowT getSideInputWindow​(BoundedWindow mainWindow)
        Returns the window of the side input corresponding to the given window of the main input.
      • maximumLookback

        public final org.joda.time.Duration maximumLookback()
        The maximum distance between the end of any main input window mainWindow and the end of the side input window returned by getSideInputWindow(BoundedWindow)

        A side input window w becomes unreachable when the input watermarks for all consumers surpasses the timestamp:

        (end of side input window) + (maximum lookback) + (main input allowed lateness).

        At this point, every main input window that could map to w is expired.