org.objectweb.speedo.query.lib
Class QueryEvalContext

java.lang.Object
  extended byorg.objectweb.speedo.query.lib.QueryEvalContext

public class QueryEvalContext
extends java.lang.Object

Represent a Medor query executed for a JDO query. It contains the query, the evaluator, a link to the SpeedoCompiledQuery and some information about the data prefetching. A JDO can correspond to several Medor query in case of inheritance for example.

Author:
S.Chassande-Barrioz

Field Summary
 java.util.Map evalMDMap
          The EvaluationMetaData map for query nodes
 QueryEvaluator evaluator
          the evaluator of the query
 PClassMapping pcm
          the PClassMapping of the prefetched class
 int pnIndex
          is the index of the identifier (prefetch index too)
 QueryTree query
          The medor querytree representing the query
 SpeedoCompiledQuery sqc
          The original speedo compiled query
 boolean withPrefetch
          indicates if the prefetching is activated
 
Constructor Summary
QueryEvalContext(QueryTree qt, boolean withPrefetch, PClassMapping pcm, SpeedoCompiledQuery sqc, java.util.Map evalMDMap)
           
 
Method Summary
 TupleCollection eval(ProxyManager pm, ParameterOperand[] pos, java.lang.Object connection)
          Executes the sub query
protected  java.lang.String posToString(ParameterOperand[] pos)
          Produces a String representation of parameter for logging.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

query

public QueryTree query
The medor querytree representing the query


evaluator

public QueryEvaluator evaluator
the evaluator of the query


withPrefetch

public boolean withPrefetch
indicates if the prefetching is activated


pnIndex

public int pnIndex
is the index of the identifier (prefetch index too)


pcm

public PClassMapping pcm
the PClassMapping of the prefetched class


sqc

public SpeedoCompiledQuery sqc
The original speedo compiled query


evalMDMap

public java.util.Map evalMDMap
The EvaluationMetaData map for query nodes

Constructor Detail

QueryEvalContext

public QueryEvalContext(QueryTree qt,
                        boolean withPrefetch,
                        PClassMapping pcm,
                        SpeedoCompiledQuery sqc,
                        java.util.Map evalMDMap)
Parameters:
qt - is the medor querytree representing the query
withPrefetch - indicates if the prefetching is activated
pcm - is the PClassMapping of the prefetched class
sqc - is the original speedo compiled query
Method Detail

eval

public TupleCollection eval(ProxyManager pm,
                            ParameterOperand[] pos,
                            java.lang.Object connection)
                     throws MedorException
Executes the sub query

Parameters:
pm - is the current persistence manager
pos - is the parameter of the query
connection - is the way to reach the persistence support
Returns:
a TupleCollection containing the result
Throws:
MedorException

posToString

protected java.lang.String posToString(ParameterOperand[] pos)
Produces a String representation of parameter for logging.