Package org.apache.kafka.streams.kstream
Class UnlimitedWindows
java.lang.Object
org.apache.kafka.streams.kstream.Windows<org.apache.kafka.streams.kstream.internals.UnlimitedWindow>
org.apache.kafka.streams.kstream.UnlimitedWindows
public final class UnlimitedWindows
extends Windows<org.apache.kafka.streams.kstream.internals.UnlimitedWindow>
The unlimited window specifications used for aggregations.
An unlimited time window is also called landmark window. It has a fixed starting point while its window end is defined as infinite. With this regard, it is a fixed-size window with infinite window size.
For time semantics, see TimestampExtractor
.
-
Field Summary
Fields inherited from class org.apache.kafka.streams.kstream.Windows
DEPRECATED_DEFAULT_24_HR_GRACE_PERIOD, NO_GRACE_PERIOD
-
Method Summary
Modifier and TypeMethodDescriptionboolean
long
Return the window grace period (the time to admit out-of-order events after the end of the window.)int
hashCode()
static UnlimitedWindows
of()
Return an unlimited window starting at timestamp zero.long
size()
Return the size of the specified windows in milliseconds.Return a new unlimited window for the specified start timestamp.toString()
windowsFor
(long timestamp) Create all windows that contain the provided timestamp, indexed by non-negative window start timestamps.
-
Field Details
-
startMs
public final long startMsThe start timestamp of the window.
-
-
Method Details
-
of
Return an unlimited window starting at timestamp zero. -
startOn
Return a new unlimited window for the specified start timestamp.- Parameters:
start
- the window start time- Returns:
- a new unlimited window that starts at
start
- Throws:
IllegalArgumentException
- if the start time is negative or can't be represented aslong milliseconds
-
windowsFor
public Map<Long,org.apache.kafka.streams.kstream.internals.UnlimitedWindow> windowsFor(long timestamp) Description copied from class:Windows
Create all windows that contain the provided timestamp, indexed by non-negative window start timestamps.- Specified by:
windowsFor
in classWindows<org.apache.kafka.streams.kstream.internals.UnlimitedWindow>
- Parameters:
timestamp
- the timestamp window should get created for- Returns:
- a map of
windowStartTimestamp -> Window
entries
-
size
public long size()Return the size of the specified windows in milliseconds. As unlimited windows have conceptually infinite size, this methods just returnsLong.MAX_VALUE
.- Specified by:
size
in classWindows<org.apache.kafka.streams.kstream.internals.UnlimitedWindow>
- Returns:
- the size of the specified windows which is
Long.MAX_VALUE
-
gracePeriodMs
public long gracePeriodMs()Description copied from class:Windows
Return the window grace period (the time to admit out-of-order events after the end of the window.) Delay is defined as (stream_time - record_timestamp).- Specified by:
gracePeriodMs
in classWindows<org.apache.kafka.streams.kstream.internals.UnlimitedWindow>
-
equals
-
hashCode
public int hashCode() -
toString
-