The predicate window opens and closes the window regarding a start and optional an end condition.
Parameter
start:
The start condition for a predicate window. If the condition evaluates to true, the windows is opened until the end predicate evaluates to true (or if not given the start predicate evaluates to false). Note, that all elements that are not inside a window are send to ouput port 1end:
The end condition for a predicate windowsameStartTime
: For predicate windows: If set to true, all produced elements get the same start timestampsize:
The maximum size of the window. Can be either a single number or a pair of a number and a time unit. Possible values for the unit are one of TimeUnit like SECONDS, NANOSECODS etc. - default time is the base time of the stream (typically milliseconds)
Remark: This is a blocking operator. The operator does not write elements before it sees new elements not belonging to the window anymore (similiar to ElementWindow)
Example
output = PREDICATEWINDOW({ start = 'a > 10 and a < 20', }, input) output = PREDICATEWINDOW({ start = 'a = 11', end = 'a = 20', }, input)