`Windows` is not a generic window type for all windows. It's only used for windows that can be "pre computed", ie, the window boundaries are know a-priory (like TimeWindow or UnlimitedWindow).
We need to distinguish between TimeWindow/UnlimitedWindow and
SessionWindows in the API. There are two overloads
`KGroupedStream#windowedBy()` each accepting a different type of window
and both use a different operator implementation internally.
Does this answer your question?
-Matthias
On 12/23/18 5:23 AM, Boyang Chen wrote:
> Hey there,
>
> I was working on some KTable API related stuff and noticed something a little
> bit confusing.
> For class SessionWindows that defines the spec for a session window, it
> doesn't have a base class:
>
> public final class SessionWindows
>
> On the other hand, the `TimeWindows` class is subclass of Windows:
>
> public final class TimeWindows extends Windows<TimeWindow> {
>
> Could someone with background knowledge give me some light on the reasoning
> for not extending the Windows class for SessionWindows?
>
> Thanks in advance!
>
> Best,
> Boyang
>
signature.asc
Description: OpenPGP digital signature
