Table of Contents

Namespace Scaleout.Streaming.TimeWindowing

Classes

SessionWindowCollection<T>

Transforms a collection into an enumerable collection of session windows and manages eviction of old items from the source collection. This wrapper can be used to manage the retention policy of the underlying collection. Objects added through this wrapper are inserted in chronological order and evicted according to the policy provided to the constructor.

SlidingWindowCollection<T>

Transforms a collection into an enumerable collection of overlapping time windows and manages eviction of old items from the source collection. This wrapper can be used to manage the retention policy of the underlying collection. Objects added through this wrapper are inserted in chronological order and evicted according to the startTime policy provided to the constructor.

TumblingWindowCollection<T>

Transforms a collection into an enumerable collection of fixed-time windows and manages eviction of old items from the source collection. This wrapper can be used to manage the retention policy of the underlying collection. Objects added through this wrapper are inserted in chronological order and evicted according to the startTime policy provided to the constructor.

WatermarkedSessionWindowCollection<T>

Transforms a collection into an enumerable collection of session windows. The collection also supports watermark-based closure of time windows and eviction of old elements from the underlying collection.

WatermarkedSlidingWindowCollection<T>

Iterable collection of time windows that are generated from an underlying collection of elements.

WatermarkedTumblingWindowCollection<T>

A collection of tumbling time windows that are generated from a source collection of elements. Each window has a fixed duration and does not overlap with other windows.

Interfaces

ITimeWindow<TElement>

Supports iteration over a collection of elements that fall within a time window.