Class

mimir.sql

RAToSql

Related Doc: package sql

Permalink

class RAToSql extends LazyLogging

Utility methods for converting from RA Operators back into JSqlParser's Select objects

Linear Supertypes
LazyLogging, Logging, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RAToSql
  2. LazyLogging
  3. Logging
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RAToSql(db: Database)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def bin(b: BinaryExpression, l: Expression, r: Expression, sources: List[(String, List[String])]): BinaryExpression

    Permalink

    Binary expression constructor

  6. def bin(b: BinaryExpression, l: Expression, r: Expression): BinaryExpression

    Permalink
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def convert(e: Expression, sources: List[(String, List[String])]): Expression

    Permalink
  9. def convert(e: Expression): Expression

    Permalink
  10. def convert(oper: Operator): SelectBody

    Permalink

    [use case] Convert an operator tree into JSQLParser's SelectBody type.

  11. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. lazy val logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    LazyLogging → Logging
  18. def makeSelect(oper: Operator): SelectBody

    Permalink

    Step 1: Strip UNIONs off the top of the operator stack

    Step 1: Strip UNIONs off the top of the operator stack

    These get converted to JSqlParser UNIONs. Both branches invoke step 2

  19. def makeSubSelect(oper: Operator): FromItem

    Permalink

    Punt an Operator conversion back to step 1 and make a SubSelect

    Punt an Operator conversion back to step 1 and make a SubSelect

    If Step 3 hits something it can't convert directly to a FromItem, we restart the conversion process by going back to step 1 to wrap the operator in a nested Select.

    The nested select (SubSelect) needs to be assigned an alias, which we assign using the (guaranteed to be unique) first element of the schema.

  20. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  21. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  23. def standardizeTables(oper: Operator): Operator

    Permalink

    An optimizing rewrite to align the expected and real schemas of table operators

    An optimizing rewrite to align the expected and real schemas of table operators

    RA Table operators are allowed to define their own naming conventions. This forces us into an ugly hack where we need to wrap each table access in a nested select. These naming rewrites can sometimes be pulled out into the parent object by wrapping the table operator in a project that handles the renaming. This rewrite does so.

  24. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  25. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  26. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from LazyLogging

Inherited from Logging

Inherited from AnyRef

Inherited from Any

Ungrouped