Package org.apache.kafka.streams.kstream
Class Window
- java.lang.Object
-
- org.apache.kafka.streams.kstream.Window
-
public abstract class Window extends Object
A single window instance, defined by its start and end timestamp.Windowis agnostic if start/end boundaries are inclusive or exclusive; this is defined by concrete window implementations.To specify how
Windowboundaries are defined useWindows. For time semantics, seeTimestampExtractor.- See Also:
Windows,TimeWindow,SessionWindow,UnlimitedWindow,TimestampExtractor
-
-
Constructor Summary
Constructors Constructor Description Window(long startMs, long endMs)Create a new window for the given start and end time.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description longend()Return the end timestamp of this window.InstantendTime()Return the end time of this window.booleanequals(Object obj)inthashCode()abstract booleanoverlap(Window other)Check if the given window overlaps with this window.longstart()Return the start timestamp of this window.InstantstartTime()Return the start time of this window.StringtoString()
-
-
-
Constructor Detail
-
Window
public Window(long startMs, long endMs) throws IllegalArgumentExceptionCreate a new window for the given start and end time.- Parameters:
startMs- the start timestamp of the windowendMs- the end timestamp of the window- Throws:
IllegalArgumentException- ifstartMsis negative or ifendMsis smaller thanstartMs
-
-
Method Detail
-
start
public long start()
Return the start timestamp of this window.- Returns:
- The start timestamp of this window.
-
end
public long end()
Return the end timestamp of this window.- Returns:
- The end timestamp of this window.
-
startTime
public Instant startTime()
Return the start time of this window.- Returns:
- The start time of this window.
-
endTime
public Instant endTime()
Return the end time of this window.- Returns:
- The end time of this window.
-
overlap
public abstract boolean overlap(Window other)
Check if the given window overlaps with this window. Should throw anIllegalArgumentExceptionif theotherwindow has a different type thanthiswindow.- Parameters:
other- another window of the same type- Returns:
trueifotheroverlaps with this window—falseotherwise
-
-