StreamVariable is a special kind of variable whose value is streamed to an {@link OutputStream} provided by the {@link #getOutputStream()} method. E.g.in web terminals {@link StreamVariable} can be used to send large files frombrowsers to the server without consuming large amounts of memory.
Note, writing to the {@link OutputStream} is not synchronized by the terminal(to avoid stalls in other operations when eg. streaming to a slow network service or file system). If UI is changed as a side effect of writing to the output stream, developer must handle synchronization manually.
@author Vaadin Ltd.
@since 6.5
@see PaintTarget#addVariable(VariableOwner,String,StreamVariable)