Class SqlMetaAndOr

java.lang.Object
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
  • Field Details

    • logger

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

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

      The type if this element. It controls, how the related ANSI SQL fragment is added to the final ANSI SQL.
  • Constructor Details

    • 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 Details

    • 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