net.sf.farrago.namespace.mdr
Class MedMdrJoinRelImplementor

java.lang.Object
  extended by net.sf.farrago.namespace.mdr.MedMdrJoinRelImplementor

 class MedMdrJoinRelImplementor
extends Object

MedMdrJoinRelImplementor keeps track of lots of transient state needed for the MedMdrJoinRel.implement() call.

Version:
$Id: //open/dev/farrago/src/net/sf/farrago/namespace/mdr/MedMdrJoinRelImplementor.java#22 $
Author:
John V. Sichi

Field Summary
private  Association association
           
private  FarragoRelImplementor implementor
           
private  MedMdrJoinRel joinRel
           
private  Expression leftChildExp
           
private  RelDataTypeField[] leftFields
           
private  Class leftKeyClass
           
private  Classifier leftKeyClassifier
           
private  RefClass leftKeyRefClass
           
private  RelNode leftRel
           
private  OJClass leftRowClass
           
private  RelDataType leftRowType
           
private  MemberDeclarationList memberList
           
private  OJClass outputRowClass
           
private  RelDataType outputRowType
           
private  MedMdrClassExtentRel rightRel
           
private  MedMdrDataServer server
           
private  StatementList stmtList
           
private  Variable varLeftRow
           
private  Variable varOutputRow
           
private  Variable varRefAssociation
           
private  Variable varRepository
           
private  Variable varRightClassifier
           
 
Constructor Summary
MedMdrJoinRelImplementor(MedMdrJoinRel joinRel)
           
 
Method Summary
private  void generateCalcJoinRow()
           
private  void generateGetNextRightIterator()
           
private  Expression generateManyToOneLookup()
           
private  Expression generateOneToManyLookup()
           
private  void generateOpen()
           
private  void generateRequiredMembers()
           
private  void generateRowCalc(RexNode[] rightExps)
           
(package private)  Expression implement(JavaRelImplementor implementor)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

implementor

private FarragoRelImplementor implementor

stmtList

private StatementList stmtList

joinRel

private MedMdrJoinRel joinRel

leftRel

private RelNode leftRel

rightRel

private MedMdrClassExtentRel rightRel

leftChildExp

private Expression leftChildExp

outputRowType

private RelDataType outputRowType

outputRowClass

private OJClass outputRowClass

memberList

private MemberDeclarationList memberList

varOutputRow

private Variable varOutputRow

leftRowType

private RelDataType leftRowType

leftFields

private RelDataTypeField[] leftFields

leftRowClass

private OJClass leftRowClass

varLeftRow

private Variable varLeftRow

server

private MedMdrDataServer server

varRepository

private Variable varRepository

varRightClassifier

private Variable varRightClassifier

association

private Association association

leftKeyClassifier

private Classifier leftKeyClassifier

leftKeyRefClass

private RefClass leftKeyRefClass

leftKeyClass

private Class leftKeyClass

varRefAssociation

private Variable varRefAssociation
Constructor Detail

MedMdrJoinRelImplementor

MedMdrJoinRelImplementor(MedMdrJoinRel joinRel)
Method Detail

implement

Expression implement(JavaRelImplementor implementor)

generateRequiredMembers

private void generateRequiredMembers()

generateGetNextRightIterator

private void generateGetNextRightIterator()

generateCalcJoinRow

private void generateCalcJoinRow()

generateOpen

private void generateOpen()

generateRowCalc

private void generateRowCalc(RexNode[] rightExps)

generateOneToManyLookup

private Expression generateOneToManyLookup()

generateManyToOneLookup

private Expression generateManyToOneLookup()