Class SliceAssigners.TumblingSliceAssigner
java.lang.Object
org.apache.flink.table.runtime.operators.window.tvf.slicing.SliceAssigners.TumblingSliceAssigner
- All Implemented Interfaces:
Serializable,WindowAssigner,SliceAssigner,SliceUnsharedAssigner
- Enclosing class:
- SliceAssigners
public static final class SliceAssigners.TumblingSliceAssigner
extends Object
implements SliceUnsharedAssigner
The
SliceAssigner for tumbling windows.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final booleanprotected final intprotected final ZoneId -
Method Summary
Modifier and TypeMethodDescriptionlongassignSliceEnd(long timestamp) final longassignSliceEnd(org.apache.flink.table.data.RowData element, ClockService clock) Returns the end timestamp of a slice that the given element should belong.expiredSlices(long windowEnd) Returns an iterator of slices to expire when the given window is emitted.Returns a description of this window assigner.longgetLastWindowEnd(long sliceEnd) Returns the last window which the slice belongs to.longReturns the interval of slice ends, i.e. the step size to advance of the slice end when a new slice assigned.longgetWindowStart(long windowEnd) Returns the corresponding window start timestamp of the given window end timestamp.final booleanReturnstrueif elements are assigned to windows based on event time,falsebased on processing time.withOffset(Duration offset) Creates a newSliceAssigners.TumblingSliceAssignerwith a new specified offset.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.table.runtime.operators.window.tvf.slicing.SliceAssigner
assignSliceEndMethods inherited from interface org.apache.flink.table.runtime.operators.window.tvf.common.WindowAssigner
isEventTime
-
Field Details
-
rowtimeIndex
protected final int rowtimeIndex -
isEventTime
protected final boolean isEventTime -
shiftTimeZone
-
-
Method Details
-
withOffset
Creates a newSliceAssigners.TumblingSliceAssignerwith a new specified offset. -
assignSliceEnd
public long assignSliceEnd(long timestamp) -
getLastWindowEnd
public long getLastWindowEnd(long sliceEnd) Description copied from interface:SliceAssignerReturns the last window which the slice belongs to. The window and slices are both identified by the end timestamp.- Specified by:
getLastWindowEndin interfaceSliceAssigner
-
getWindowStart
public long getWindowStart(long windowEnd) Description copied from interface:SliceAssignerReturns the corresponding window start timestamp of the given window end timestamp.- Specified by:
getWindowStartin interfaceSliceAssigner
-
expiredSlices
Description copied from interface:SliceAssignerReturns an iterator of slices to expire when the given window is emitted. The window and slices are both identified by the end timestamp.- Specified by:
expiredSlicesin interfaceSliceAssigner- Parameters:
windowEnd- the end timestamp of window emitted.
-
getSliceEndInterval
public long getSliceEndInterval()Description copied from interface:SliceAssignerReturns the interval of slice ends, i.e. the step size to advance of the slice end when a new slice assigned.- Specified by:
getSliceEndIntervalin interfaceSliceAssigner
-
getDescription
Description copied from interface:WindowAssignerReturns a description of this window assigner.- Specified by:
getDescriptionin interfaceWindowAssigner
-
assignSliceEnd
Description copied from interface:SliceAssignerReturns the end timestamp of a slice that the given element should belong.- Specified by:
assignSliceEndin interfaceSliceAssigner- Parameters:
element- the element to which slice should belong to.clock- the service to get current processing time.
-
isEventTime
public final boolean isEventTime()Description copied from interface:WindowAssignerReturnstrueif elements are assigned to windows based on event time,falsebased on processing time.- Specified by:
isEventTimein interfaceWindowAssigner
-