com.espertech.esper.client.soda
Class ProjectedStream

java.lang.Object
  extended by com.espertech.esper.client.soda.Stream
      extended by com.espertech.esper.client.soda.ProjectedStream
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
FilterStream, PatternStream

public abstract class ProjectedStream
extends Stream

Abstract base class for streams that can be projected via views providing data window, uniqueness or other projections or deriving further information from streams.

See Also:
Serialized Form

Constructor Summary
  ProjectedStream()
          Ctor.
protected ProjectedStream(java.util.List<View> views, java.lang.String optStreamName)
          Ctor.
 
Method Summary
 ProjectedStream addView(java.lang.String namespace, java.lang.String name)
          Adds an un-parameterized view to the stream.
 ProjectedStream addView(java.lang.String namespace, java.lang.String name, Expression... parameters)
          Adds a parameterized view to the stream.
 ProjectedStream addView(java.lang.String namespace, java.lang.String name, java.util.List<Expression> parameters)
          Adds a parameterized view to the stream.
 ProjectedStream addView(View view)
          Add a view to the stream.
 java.util.List<View> getViews()
          Returns the list of views added to the stream.
 boolean isRetainIntersection()
          Returns true if multiple data window shall be treated as an intersection.
 boolean isRetainUnion()
          Returns true if multiple data window shall be treated as a union.
 boolean isUnidirectional()
          Returns true if the stream as unidirectional, for use in unidirectional joins.
 void setRetainIntersection(boolean retainIntersection)
          Set to true to have multiple data window be treated as a intersection.
 void setRetainUnion(boolean retainUnion)
          Set to true to have multiple data window be treated as a union.
 void setUnidirectional(boolean isUnidirectional)
          Set to true to indicate that a stream is unidirectional, for use in unidirectional joins.
 void setViews(java.util.List<View> views)
          Sets the list of views onto the stream.
abstract  void toEPLProjectedStream(java.io.StringWriter writer, EPStatementFormatter formatter)
          Represent as textual.
abstract  void toEPLProjectedStreamType(java.io.StringWriter writer)
          Represent type as textual non complete.
 void toEPLStream(java.io.StringWriter writer, EPStatementFormatter formatter)
          Renders the clause in textual representation.
 void toEPLStreamOptions(java.io.StringWriter writer)
          Renders the stream in textual representation any stream options, if present.
 void toEPLStreamType(java.io.StringWriter writer)
          Renders the stream type under a non-complete textual representation for tool use
protected static void toEPLViews(java.io.StringWriter writer, java.util.List<View> views)
          Renders the views onto the projected stream.
 ProjectedStream unidirectional(boolean isUnidirectional)
          Set to unidirectional.
 
Methods inherited from class com.espertech.esper.client.soda.Stream
getStreamName, setStreamName, toEPL
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProjectedStream

public ProjectedStream()
Ctor.


ProjectedStream

protected ProjectedStream(java.util.List<View> views,
                          java.lang.String optStreamName)
Ctor.

Parameters:
views - is a list of views upon the stream
optStreamName - is the stream as-name, or null if unnamed
Method Detail

toEPLProjectedStream

public abstract void toEPLProjectedStream(java.io.StringWriter writer,
                                          EPStatementFormatter formatter)
Represent as textual.

Parameters:
writer - to output to
formatter - for newline-whitespace formatting

toEPLProjectedStreamType

public abstract void toEPLProjectedStreamType(java.io.StringWriter writer)
Represent type as textual non complete.

Parameters:
writer - to output to

addView

public ProjectedStream addView(java.lang.String namespace,
                               java.lang.String name)
Adds an un-parameterized view to the stream.

Parameters:
namespace - is the view namespace, for example "win" for most data windows
name - is the view name, for example "length" for a length window
Returns:
stream

addView

public ProjectedStream addView(java.lang.String namespace,
                               java.lang.String name,
                               java.util.List<Expression> parameters)
Adds a parameterized view to the stream.

Parameters:
namespace - is the view namespace, for example "win" for most data windows
name - is the view name, for example "length" for a length window
parameters - is a list of view parameters
Returns:
stream

addView

public ProjectedStream addView(java.lang.String namespace,
                               java.lang.String name,
                               Expression... parameters)
Adds a parameterized view to the stream.

Parameters:
namespace - is the view namespace, for example "win" for most data windows
name - is the view name, for example "length" for a length window
parameters - is a list of view parameters
Returns:
stream

addView

public ProjectedStream addView(View view)
Add a view to the stream.

Parameters:
view - to add
Returns:
stream

getViews

public java.util.List<View> getViews()
Returns the list of views added to the stream.

Returns:
list of views

setViews

public void setViews(java.util.List<View> views)
Sets the list of views onto the stream.

Parameters:
views - list of views

toEPLStream

public void toEPLStream(java.io.StringWriter writer,
                        EPStatementFormatter formatter)
Renders the clause in textual representation.

Specified by:
toEPLStream in class Stream
Parameters:
writer - to output to
formatter - for newline-whitespace formatting

toEPLStreamType

public void toEPLStreamType(java.io.StringWriter writer)
Description copied from class: Stream
Renders the stream type under a non-complete textual representation for tool use

Specified by:
toEPLStreamType in class Stream
Parameters:
writer - to output to

isUnidirectional

public boolean isUnidirectional()
Returns true if the stream as unidirectional, for use in unidirectional joins.

Returns:
true for unidirectional stream, applicable only for joins

setUnidirectional

public void setUnidirectional(boolean isUnidirectional)
Set to true to indicate that a stream is unidirectional, for use in unidirectional joins.

Parameters:
isUnidirectional - true for unidirectional stream, applicable only for joins

unidirectional

public ProjectedStream unidirectional(boolean isUnidirectional)
Set to unidirectional.

Parameters:
isUnidirectional - try if unidirectional
Returns:
stream

isRetainUnion

public boolean isRetainUnion()
Returns true if multiple data window shall be treated as a union.

Returns:
retain union

setRetainUnion

public void setRetainUnion(boolean retainUnion)
Set to true to have multiple data window be treated as a union.

Parameters:
retainUnion - indicator to union

isRetainIntersection

public boolean isRetainIntersection()
Returns true if multiple data window shall be treated as an intersection.

Returns:
retain intersection

setRetainIntersection

public void setRetainIntersection(boolean retainIntersection)
Set to true to have multiple data window be treated as a intersection.

Parameters:
retainIntersection - indicator to intersection

toEPLViews

protected static void toEPLViews(java.io.StringWriter writer,
                                 java.util.List<View> views)
Renders the views onto the projected stream.

Parameters:
writer - to render to
views - to render

toEPLStreamOptions

public void toEPLStreamOptions(java.io.StringWriter writer)
Description copied from class: Stream
Renders the stream in textual representation any stream options, if present.

Specified by:
toEPLStreamOptions in class Stream
Parameters:
writer - to output to

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com