public class FromClause extends Object implements Serializable
The most common projected stream is a filter-based stream which is created by FilterStream
.
Multiple streams can be joined by adding each stream individually.
Outer joins are also handled by this class. To create an outer join consisting of 2 streams,
add one OuterJoinQualifier
that defines the outer join relationship between the 2 streams. The outer joins between
N streams, add N-1 OuterJoinQualifier
qualifiers.
Constructor and Description |
---|
FromClause()
Ctor.
|
FromClause(Stream... streamsList)
Ctor.
|
FromClause(Stream streamOne,
OuterJoinQualifier outerJoinQualifier,
Stream streamTwo)
Ctor for an outer join between two streams.
|
Modifier and Type | Method and Description |
---|---|
FromClause |
add(OuterJoinQualifier outerJoinQualifier)
Adds an outer join descriptor that defines how the streams are related via outer joins.
|
FromClause |
add(Stream stream)
Adds a stream.
|
static FromClause |
create()
Creates an empty from-clause to which one adds streams via the add methods.
|
static FromClause |
create(Stream... streams)
Creates a from clause that selects from a single stream.
|
static FromClause |
create(Stream stream,
OuterJoinQualifier outerJoinQualifier,
Stream streamSecond)
Creates a from-clause that lists 2 projected streams joined via outer join.
|
List<OuterJoinQualifier> |
getOuterJoinQualifiers()
Returns the outer join descriptors, if this is an outer join, or an empty list if
none of the streams are outer joined.
|
List<Stream> |
getStreams()
Returns the list of streams in the from-clause.
|
void |
setOuterJoinQualifiers(List<OuterJoinQualifier> outerJoinQualifiers)
Set outer joins.
|
void |
setStreams(List<Stream> streams)
Set the streams.
|
void |
toEPL(StringWriter writer,
EPStatementFormatter formatter)
Renders the from-clause in textual representation.
|
void |
toEPLOptions(StringWriter writer,
EPStatementFormatter formatter,
boolean includeFrom)
Renders the from-clause in textual representation.
|
public FromClause()
public FromClause(Stream streamOne, OuterJoinQualifier outerJoinQualifier, Stream streamTwo)
streamOne
- first stream in outer joinouterJoinQualifier
- type of outer join and fields joined onstreamTwo
- second stream in outer joinpublic FromClause(Stream... streamsList)
streamsList
- is zero or more streams in the from-clause.public static FromClause create()
public static FromClause create(Stream stream, OuterJoinQualifier outerJoinQualifier, Stream streamSecond)
stream
- first stream in outer joinouterJoinQualifier
- qualifies the outer joinstreamSecond
- second stream in outer joinpublic static FromClause create(Stream... streams)
Use FilterStream
to create filter-based streams to add.
streams
- is one or more streams to add to the from clause.public FromClause add(Stream stream)
Use FilterStream
to add filter-based streams.
stream
- to addpublic FromClause add(OuterJoinQualifier outerJoinQualifier)
For joining N streams, add N-1 outer join qualifiers.
outerJoinQualifier
- is the type of outer join and the fields in the outer joinpublic List<Stream> getStreams()
public void toEPL(StringWriter writer, EPStatementFormatter formatter)
writer
- to output toformatter
- for newline-whitespace formattingpublic void toEPLOptions(StringWriter writer, EPStatementFormatter formatter, boolean includeFrom)
writer
- to output toincludeFrom
- flag whether to add the "from" literalformatter
- for newline-whitespace formattingpublic List<OuterJoinQualifier> getOuterJoinQualifiers()
public void setStreams(List<Stream> streams)
streams
- to setpublic void setOuterJoinQualifiers(List<OuterJoinQualifier> outerJoinQualifiers)
outerJoinQualifiers
- to set