org.sqlproc.engine.impl
Class SqlMetaAndOr

java.lang.Object
  extended by org.sqlproc.engine.impl.SqlMetaAndOr
All Implemented Interfaces:
SqlMetaElement

 class SqlMetaAndOr
extends Object
implements SqlMetaElement

A META SQL sub-element.

Schematically:

 SqlMetaAndOr 
     { SqlMetaIfItem | SqlMetaIfItem...}
     {& SqlMetaIfItem | SqlMetaIfItem...}
     {| SqlMetaIfItem | SqlMetaIfItem...}
 

Author:
Vladimir Hudec

Nested Class Summary
(package private) static class SqlMetaAndOr.Type
          The enumeration of types.
 
Field Summary
(package private)  List<SqlMetaIfItem> elements
          The list of sub-elements based on ANTLR grammar.
(package private)  org.slf4j.Logger logger
          The internal slf4j logger.
(package private)  SqlMetaAndOr.Type type
          The type if this element.
 
Fields inherited from interface org.sqlproc.engine.impl.SqlMetaElement
AND_PREFIX, CONST_PREFIX, IDENT_PREFIX, IDENT_SEPARATOR, lCONST_PREFIX, lIDENT_PREFIX, OR_PREFIX, SET_PREFIX, VALUES_PREFIX, WHERE_PREFIX
 
Constructor Summary
SqlMetaAndOr(SqlMetaAndOr.Type type)
          Creates a new instance.
 
Method Summary
(package private)  void addElement(SqlMetaIfItem element)
          Adds a new sub-element.
(package private)  String getPrefix()
          Returns one of the next ANSI SQL fragments: , AND or OR.
 SqlProcessResult process(SqlProcessContext ctx)
          The main contract for a dynamic ANSI SQL Query generation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

final org.slf4j.Logger logger
The internal slf4j logger.


elements

List<SqlMetaIfItem> elements
The list of sub-elements based on ANTLR grammar.


type

SqlMetaAndOr.Type type
The type if this element. It controls, how the related ANSI SQL fragment is added to the final ANSI SQL.

Constructor Detail

SqlMetaAndOr

SqlMetaAndOr(SqlMetaAndOr.Type type)
Creates a new instance. It's used from inside ANTLR parser.

Parameters:
type - the type, which is used to control, how the related ANSI SQL fragment is added to the final ANSI SQL.
Method Detail

addElement

void addElement(SqlMetaIfItem element)
Adds a new sub-element. It's used from inside ANTLR parser.

Parameters:
element - new sub-element, based on ANTLR grammar

getPrefix

String getPrefix()
Returns one of the next ANSI SQL fragments: , AND or OR.

Returns:
the ANSI SQL fragment based on the type of this element

process

public SqlProcessResult process(SqlProcessContext ctx)
The main contract for a dynamic ANSI SQL Query generation. Also known as a META SQL processing. The composite pattern main contract. All ANTLR grammar based elements must implement this contract.

Specified by:
process in interface SqlMetaElement
Parameters:
ctx - the crate for all input parameters and the context of processing


Copyright © 2013. All Rights Reserved.