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.Window
is agnostic if start/end boundaries are inclusive or exclusive; this is defined by concrete window implementations.To specify how
Window
boundaries 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 long
end()
Return the end timestamp of this window.Instant
endTime()
Return the end time of this window.boolean
equals(Object obj)
int
hashCode()
abstract boolean
overlap(Window other)
Check if the given window overlaps with this window.long
start()
Return the start timestamp of this window.Instant
startTime()
Return the start time of this window.String
toString()
-
-
-
Constructor Detail
-
Window
public Window(long startMs, long endMs) throws IllegalArgumentException
Create 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
- ifstartMs
is negative or ifendMs
is 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 anIllegalArgumentException
if theother
window has a different type thanthis
window.- Parameters:
other
- another window of the same type- Returns:
true
ifother
overlaps with this window—false
otherwise
-
-