Class TVFSlidingWindowFn

  • All Implemented Interfaces:
    java.io.Serializable, org.apache.beam.sdk.transforms.display.HasDisplayData

    public abstract class TVFSlidingWindowFn
    extends org.apache.beam.sdk.transforms.windowing.NonMergingWindowFn<java.lang.Object,​org.apache.beam.sdk.transforms.windowing.IntervalWindow>
    TVFSlidingWindowFn assigns window based on input row's "window_start" and "window_end" timestamps.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.apache.beam.sdk.transforms.windowing.WindowFn

        org.apache.beam.sdk.transforms.windowing.WindowFn.AssignContext, org.apache.beam.sdk.transforms.windowing.WindowFn.MergeContext
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Collection<org.apache.beam.sdk.transforms.windowing.IntervalWindow> assignWindows​(org.apache.beam.sdk.transforms.windowing.WindowFn.AssignContext c)  
      org.apache.beam.sdk.transforms.windowing.WindowMappingFn<org.apache.beam.sdk.transforms.windowing.IntervalWindow> getDefaultWindowMappingFn()  
      abstract org.joda.time.Duration getPeriod()
      Amount of time between generated windows.
      abstract org.joda.time.Duration getSize()
      Size of the generated windows.
      boolean isCompatible​(org.apache.beam.sdk.transforms.windowing.WindowFn<?,​?> other)  
      static TVFSlidingWindowFn of​(org.joda.time.Duration size, org.joda.time.Duration period)  
      org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.transforms.windowing.IntervalWindow> windowCoder()  
      • Methods inherited from class org.apache.beam.sdk.transforms.windowing.NonMergingWindowFn

        isNonMerging, mergeWindows
      • Methods inherited from class org.apache.beam.sdk.transforms.windowing.WindowFn

        assignsToOneWindow, getWindowTypeDescriptor, populateDisplayData, verifyCompatibility
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • TVFSlidingWindowFn

        public TVFSlidingWindowFn()
    • Method Detail

      • getSize

        public abstract org.joda.time.Duration getSize()
        Size of the generated windows.
      • getPeriod

        public abstract org.joda.time.Duration getPeriod()
        Amount of time between generated windows.
      • of

        public static TVFSlidingWindowFn of​(org.joda.time.Duration size,
                                            org.joda.time.Duration period)
      • assignWindows

        public java.util.Collection<org.apache.beam.sdk.transforms.windowing.IntervalWindow> assignWindows​(org.apache.beam.sdk.transforms.windowing.WindowFn.AssignContext c)
                                                                                                    throws java.lang.Exception
        Specified by:
        assignWindows in class org.apache.beam.sdk.transforms.windowing.WindowFn<java.lang.Object,​org.apache.beam.sdk.transforms.windowing.IntervalWindow>
        Throws:
        java.lang.Exception
      • isCompatible

        public boolean isCompatible​(org.apache.beam.sdk.transforms.windowing.WindowFn<?,​?> other)
        Specified by:
        isCompatible in class org.apache.beam.sdk.transforms.windowing.WindowFn<java.lang.Object,​org.apache.beam.sdk.transforms.windowing.IntervalWindow>
      • windowCoder

        public org.apache.beam.sdk.coders.Coder<org.apache.beam.sdk.transforms.windowing.IntervalWindow> windowCoder()
        Specified by:
        windowCoder in class org.apache.beam.sdk.transforms.windowing.WindowFn<java.lang.Object,​org.apache.beam.sdk.transforms.windowing.IntervalWindow>
      • getDefaultWindowMappingFn

        public org.apache.beam.sdk.transforms.windowing.WindowMappingFn<org.apache.beam.sdk.transforms.windowing.IntervalWindow> getDefaultWindowMappingFn()
        Specified by:
        getDefaultWindowMappingFn in class org.apache.beam.sdk.transforms.windowing.WindowFn<java.lang.Object,​org.apache.beam.sdk.transforms.windowing.IntervalWindow>