T
- The type of elements that can be added to this WindowBuffer
.ACC
- The type of the accumulator that this WindowBuffer
can store.@Internal public class FoldingWindowBuffer<T,ACC> extends Object implements WindowBuffer<T,ACC>
WindowBuffer
that stores elements on the Java Heap. This buffer uses a
FoldFunction
to incrementally aggregate elements that are added to the buffer.Modifier and Type | Class and Description |
---|---|
static class |
FoldingWindowBuffer.Factory<T,ACC> |
Modifier | Constructor and Description |
---|---|
protected |
FoldingWindowBuffer(FoldFunction<T,ACC> foldFunction,
ACC initialAccumulator,
TypeSerializer<ACC> accSerializer) |
protected |
FoldingWindowBuffer(FoldFunction<T,ACC> foldFunction,
StreamRecord<ACC> initialAccumulator,
TypeSerializer<ACC> accSerializer) |
Modifier and Type | Method and Description |
---|---|
Iterable<StreamRecord<ACC>> |
getElements()
Returns all elements that are currently in the buffer.
|
Iterable<ACC> |
getUnpackedElements()
Returns all elements that are currently in the buffer.
|
int |
size()
Returns the number of elements that are currently in the buffer.
|
void |
snapshot(DataOutputView out)
Writes the contents of the window buffer to a
DataOutputView for checkpointing. |
void |
storeElement(StreamRecord<T> element)
Adds the element to the buffer.
|
protected FoldingWindowBuffer(FoldFunction<T,ACC> foldFunction, ACC initialAccumulator, TypeSerializer<ACC> accSerializer)
protected FoldingWindowBuffer(FoldFunction<T,ACC> foldFunction, StreamRecord<ACC> initialAccumulator, TypeSerializer<ACC> accSerializer)
public void storeElement(StreamRecord<T> element) throws Exception
WindowBuffer
storeElement
in interface WindowBuffer<T,ACC>
element
- The element to add.Exception
public Iterable<StreamRecord<ACC>> getElements()
WindowBuffer
getElements
in interface WindowBuffer<T,ACC>
public Iterable<ACC> getUnpackedElements()
WindowBuffer
StreamRecord
.getUnpackedElements
in interface WindowBuffer<T,ACC>
public int size()
WindowBuffer
size
in interface WindowBuffer<T,ACC>
public void snapshot(DataOutputView out) throws IOException
WindowBuffer
DataOutputView
for checkpointing.snapshot
in interface WindowBuffer<T,ACC>
IOException
Copyright © 2014–2017 The Apache Software Foundation. All rights reserved.