Class EPStatementObjectModel
java.lang.Object
com.espertech.esper.common.client.soda.EPStatementObjectModel
- All Implemented Interfaces:
Serializable
Object model of an EPL statement.
Applications can create an object model by instantiating this class and then setting the various clauses. When done, use the administrative interface to deploy from the model.
Use the toEPL method to generate a textual EPL from an object model.
Minimally, and EPL statement consists of the select-clause and the where-clause. These are represented by SelectClause
and FromClause
respectively.
Here is a short example that create a simple EPL statement such as "select page, responseTime from PageLoad" :
EPStatementObjectModel model = new EPStatementObjectModel(); model.setSelectClause(SelectClause.create("page", "responseTime")); model.setPropertyEvalSpec(FromClause.create(FilterStream.create("PageLoad")));
The select-clause and from-clause must be set for the statement object model to be useable by the administrative API. All other clauses a optional.
Please see the documentation set for further examples.
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfromClause
(FromClause fromClause) Specify a from-clause.Returns annotations.Returns the inlined-classes provided as part of the EPL statementReturns the context name if context dimensions apply to statement.Returns the create-class clause or null if not present.Returns the create-context clause.Returns the "create dataflow" part, if present.Returns the create-expression clause, if anyReturns create-index clause.Returns the create-schema clause.Returns the create-table clause if present or null if not presentReturns the create-variable clause if this is a statement creating a variable, or null if not.Returns the create-window clause for creating named windows, or null if this statement does not create a named window.Returns the expression declarations, if any.Returns fire-and-forget (on-demand) query information for FAF select, insert, update and delete.Returns the for-clause.Return the from-clause.Return the group-by-clause, or null to indicate that the clause is absent.Return the having-clause, or null to indicate that the clause is absent.Return the insert-into-clause, or null to indicate that the clause is absent.Returns the into-table clause, or null if none found.Match-recognize clause.Returns the on-delete clause for deleting from named windows, or null if this statement does not delete from a named windowReturn the order-by-clause, or null to indicate that the clause is absent.Return the output-rate-limiting-clause, or null to indicate that the clause is absent.Returns the row limit specification, or null if none supplied.Returns the scripts defined.Return the select-clause.Returns the internal expression id assigned for tools to identify the expression.Returns the update specification.Return the where-clause, or null to indicate that the clause is absent.groupByClause
(GroupByClause groupByClause) Specify a group-by-clause.havingClause
(Expression havingClause) Specify a having-clause.insertInto
(InsertIntoClause insertInto) Specify an insert-into-clause.orderByClause
(OrderByClause orderByClause) Specify an order-by-clause.outputLimitClause
(OutputLimitClause outputLimitClause) Specify an output-rate-limiting-clause.selectClause
(SelectClause selectClause) Specify a select-clause.void
setAnnotations
(List<AnnotationPart> annotations) Sets annotations.void
setClassProvidedExpressions
(List<ClassProvidedExpression> classProvidedExpressions) Sets the inlined-classes provided as part of the EPL statementvoid
setContextName
(String contextName) Sets the context name if context dimensions apply to statement.void
setCreateClass
(CreateClassClause createClass) Sets the create-class clause or null if not present.void
setCreateContext
(CreateContextClause createContext) Sets the create-context clause.void
setCreateDataFlow
(CreateDataFlowClause createDataFlow) Sets the "create dataflow" part,.void
setCreateExpression
(CreateExpressionClause createExpression) Sets the create-expression clause, if anyvoid
setCreateIndex
(CreateIndexClause createIndex) Sets create-index clause.void
setCreateSchema
(CreateSchemaClause createSchema) Sets the create-schema clause.void
setCreateTable
(CreateTableClause createTable) Sets the create-table clause if present or null if not presentvoid
setCreateVariable
(CreateVariableClause createVariable) Sets the create-variable clause if this is a statement creating a variable, or null if not.void
setCreateWindow
(CreateWindowClause createWindow) Sets the create-window clause for creating named windows, or null if this statement does not create a named window.void
setExpressionDeclarations
(List<ExpressionDeclaration> expressionDeclarations) Sets the expression declarations, if any.void
setFireAndForgetClause
(FireAndForgetClause fireAndForgetClause) Sets fire-and-forget (on-demand) query information for FAF select, insert, update and delete.void
setForClause
(ForClause forClause) Sets the for-clause.void
setFromClause
(FromClause fromClause) Specify a from-clause.void
setGroupByClause
(GroupByClause groupByClause) Specify a group-by-clause.void
setHavingClause
(Expression havingClause) Specify a having-clause.void
setInsertInto
(InsertIntoClause insertInto) Specify an insert-into-clause.void
setIntoTableClause
(IntoTableClause intoTableClause) Sets the into-table clause, or null if none found.void
Sets match-recognize clause.void
Sets the on-delete or on-select clause for selecting or deleting from named windows, or null if this statement does not on-select or on-delete from a named windowvoid
setOrderByClause
(OrderByClause orderByClause) Specify an order-by-clause.void
setOutputLimitClause
(OutputLimitClause outputLimitClause) Specify an output-rate-limiting-clause.void
setRowLimitClause
(RowLimitClause rowLimitClause) Sets the row limit specification, or null if none applicable.void
setScriptExpressions
(List<ScriptExpression> scriptExpressions) Sets the scripts.void
setSelectClause
(SelectClause selectClause) Specify a select-clause.void
setTreeObjectName
(String treeObjectName) Sets an internal expression id assigned for tools to identify the expression.void
setUpdateClause
(UpdateClause updateClause) Sets the update specification.void
setWhereClause
(Expression whereClause) Specify a where-clause.toEPL()
Renders the object model in it's EPL syntax textual representation.toEPL
(EPStatementFormatter formatter) Rendering using the provided formatter.void
toEPL
(EPStatementFormatter formatter, StringWriter writer) Renders the object model in it's EPL syntax textual representation, using a whitespace-formatter as provided.void
toEPL
(StringWriter writer) Rendering using the provided writer.whereClause
(Expression whereClause) Specify a where-clause.
-
Constructor Details
-
EPStatementObjectModel
public EPStatementObjectModel()Ctor.
-
-
Method Details
-
setInsertInto
Specify an insert-into-clause.- Parameters:
insertInto
- specifies the insert-into-clause, or null to indicate that the clause is absent
-
insertInto
Specify an insert-into-clause.- Parameters:
insertInto
- specifies the insert-into-clause, or null to indicate that the clause is absent- Returns:
- model
-
getInsertInto
Return the insert-into-clause, or null to indicate that the clause is absent.- Returns:
- specification of the insert-into-clause, or null if none present
-
setSelectClause
Specify a select-clause.- Parameters:
selectClause
- specifies the select-clause, the select-clause cannot be null and must be set
-
selectClause
Specify a select-clause.- Parameters:
selectClause
- specifies the select-clause, the select-clause cannot be null and must be set- Returns:
- model
-
getSelectClause
Return the select-clause.- Returns:
- specification of the select-clause
-
setFromClause
Specify a from-clause.- Parameters:
fromClause
- specifies the from-clause, the from-clause cannot be null and must be set
-
fromClause
Specify a from-clause.- Parameters:
fromClause
- specifies the from-clause, the from-clause cannot be null and must be set- Returns:
- model
-
getWhereClause
Return the where-clause, or null to indicate that the clause is absent.- Returns:
- specification of the where-clause, or null if none present
-
setWhereClause
Specify a where-clause.- Parameters:
whereClause
- specifies the where-clause, which is optional and can be null
-
whereClause
Specify a where-clause.- Parameters:
whereClause
- specifies the where-clause, which is optional and can be null- Returns:
- model
-
getFromClause
Return the from-clause.- Returns:
- specification of the from-clause
-
getGroupByClause
Return the group-by-clause, or null to indicate that the clause is absent.- Returns:
- specification of the group-by-clause, or null if none present
-
setGroupByClause
Specify a group-by-clause.- Parameters:
groupByClause
- specifies the group-by-clause, which is optional and can be null
-
groupByClause
Specify a group-by-clause.- Parameters:
groupByClause
- specifies the group-by-clause, which is optional and can be null- Returns:
- model
-
getHavingClause
Return the having-clause, or null to indicate that the clause is absent.- Returns:
- specification of the having-clause, or null if none present
-
setHavingClause
Specify a having-clause.- Parameters:
havingClause
- specifies the having-clause, which is optional and can be null
-
havingClause
Specify a having-clause.- Parameters:
havingClause
- specifies the having-clause, which is optional and can be null- Returns:
- model
-
getOrderByClause
Return the order-by-clause, or null to indicate that the clause is absent.- Returns:
- specification of the order-by-clause, or null if none present
-
setOrderByClause
Specify an order-by-clause.- Parameters:
orderByClause
- specifies the order-by-clause, which is optional and can be null
-
orderByClause
Specify an order-by-clause.- Parameters:
orderByClause
- specifies the order-by-clause, which is optional and can be null- Returns:
- model
-
getOutputLimitClause
Return the output-rate-limiting-clause, or null to indicate that the clause is absent.- Returns:
- specification of the output-rate-limiting-clause, or null if none present
-
setOutputLimitClause
Specify an output-rate-limiting-clause.- Parameters:
outputLimitClause
- specifies the output-rate-limiting-clause, which is optional and can be null
-
outputLimitClause
Specify an output-rate-limiting-clause.- Parameters:
outputLimitClause
- specifies the output-rate-limiting-clause, which is optional and can be null- Returns:
- model
-
toEPL
Renders the object model in it's EPL syntax textual representation.- Returns:
- EPL representing the statement object model
- Throws:
IllegalStateException
- if required clauses do not exist
-
toEPL
Rendering using the provided writer.- Parameters:
writer
- to use
-
toEPL
Rendering using the provided formatter.- Parameters:
formatter
- to use- Returns:
- rendered string
-
toEPL
Renders the object model in it's EPL syntax textual representation, using a whitespace-formatter as provided.- Parameters:
formatter
- the formatter to usewriter
- writer to use- Throws:
IllegalStateException
- if required clauses do not exist
-
getCreateWindow
Returns the create-window clause for creating named windows, or null if this statement does not create a named window.- Returns:
- named window creation clause
-
setCreateWindow
Sets the create-window clause for creating named windows, or null if this statement does not create a named window.- Parameters:
createWindow
- is the named window creation clause
-
getOnExpr
Returns the on-delete clause for deleting from named windows, or null if this statement does not delete from a named window- Returns:
- on delete clause
-
setOnExpr
Sets the on-delete or on-select clause for selecting or deleting from named windows, or null if this statement does not on-select or on-delete from a named window- Parameters:
onExpr
- is the on-expression (on-select and on-delete) clause to set
-
getCreateVariable
Returns the create-variable clause if this is a statement creating a variable, or null if not.- Returns:
- create-variable clause
-
setCreateVariable
Sets the create-variable clause if this is a statement creating a variable, or null if not.- Parameters:
createVariable
- create-variable clause
-
getRowLimitClause
Returns the row limit specification, or null if none supplied.- Returns:
- row limit spec if any
-
setRowLimitClause
Sets the row limit specification, or null if none applicable.- Parameters:
rowLimitClause
- row limit spec if any
-
getUpdateClause
Returns the update specification.- Returns:
- update spec if defined
-
setUpdateClause
Sets the update specification.- Parameters:
updateClause
- update spec if defined
-
getAnnotations
Returns annotations.- Returns:
- annotations
-
setAnnotations
Sets annotations.- Parameters:
annotations
- to set
-
getMatchRecognizeClause
Match-recognize clause.- Returns:
- clause
-
setMatchRecognizeClause
Sets match-recognize clause.- Parameters:
clause
- to set
-
getCreateIndex
Returns create-index clause.- Returns:
- clause
-
setCreateIndex
Sets create-index clause.- Parameters:
createIndex
- to set
-
getCreateSchema
Returns the create-schema clause.- Returns:
- clause
-
setCreateSchema
Sets the create-schema clause.- Parameters:
createSchema
- clause to set
-
getCreateContext
Returns the create-context clause.- Returns:
- clause
-
setCreateContext
Sets the create-context clause.- Parameters:
createContext
- clause to set
-
getForClause
Returns the for-clause.- Returns:
- for-clause
-
setForClause
Sets the for-clause.- Parameters:
forClause
- for-clause
-
getExpressionDeclarations
Returns the expression declarations, if any.- Returns:
- expression declarations
-
setExpressionDeclarations
Sets the expression declarations, if any.- Parameters:
expressionDeclarations
- expression declarations to set
-
getContextName
Returns the context name if context dimensions apply to statement.- Returns:
- context name
-
setContextName
Sets the context name if context dimensions apply to statement.- Parameters:
contextName
- context name
-
getScriptExpressions
Returns the scripts defined.- Returns:
- scripts
-
setScriptExpressions
Sets the scripts.- Parameters:
scriptExpressions
- to set
-
getClassProvidedExpressions
Returns the inlined-classes provided as part of the EPL statement- Returns:
- inlined-classes
-
setClassProvidedExpressions
Sets the inlined-classes provided as part of the EPL statement- Parameters:
classProvidedExpressions
- inlined-classes
-
getCreateDataFlow
Returns the "create dataflow" part, if present.- Returns:
- create dataflow clause
-
setCreateDataFlow
Sets the "create dataflow" part,.- Parameters:
createDataFlow
- create dataflow clause
-
getTreeObjectName
Returns the internal expression id assigned for tools to identify the expression.- Returns:
- object name
-
setTreeObjectName
Sets an internal expression id assigned for tools to identify the expression.- Parameters:
treeObjectName
- object name
-
getCreateExpression
Returns the create-expression clause, if any- Returns:
- clause
-
setCreateExpression
Sets the create-expression clause, if any- Parameters:
createExpression
- clause
-
getCreateClass
Returns the create-class clause or null if not present.- Returns:
- create-class clause
-
setCreateClass
Sets the create-class clause or null if not present.- Parameters:
createClass
- create-class clause
-
getFireAndForgetClause
Returns fire-and-forget (on-demand) query information for FAF select, insert, update and delete.- Returns:
- fire and forget query information
-
setFireAndForgetClause
Sets fire-and-forget (on-demand) query information for FAF select, insert, update and delete.- Parameters:
fireAndForgetClause
- fire and forget query information
-
getIntoTableClause
Returns the into-table clause, or null if none found.- Returns:
- into-table clause
-
setIntoTableClause
Sets the into-table clause, or null if none found.- Parameters:
intoTableClause
- into-table clause
-
getCreateTable
Returns the create-table clause if present or null if not present- Returns:
- create-table clause
-
setCreateTable
Sets the create-table clause if present or null if not present- Parameters:
createTable
- create-table clause
-