Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.jpa.internal.jpql.parser
Class QueryPosition

java.lang.Object
  extended by org.eclipse.persistence.jpa.internal.jpql.parser.QueryPosition


public final class QueryPosition
extends java.lang.Object

This object contains the cursor position within the parsed tree and within each of the Expression from the root to the deepest leaf.

Since:
2.3
Version:
2.3
Author:
Pascal Filion

Field Summary
private  Expression expression
          The deepest child Expression where the position of the cursor is.
private  int position
          The position of the cursor in the query.
private  java.util.Map<Expression,java.lang.Integer> positions
          The table containing the position of each of the Expression up to the deepest leaf.

 

Constructor Summary
QueryPosition(int position)
          Creates a new QueryPosition.

 

Method Summary
(package private)  void addPosition(Expression expression, int position)
          Adds the position of the cursor within the given Expression
(package private)  void adjustPosition(AbstractExpression parent, Expression expression, int adjustedPosition)
           
(package private)  QueryPosition adjustPosition(Expression expression, int newPosition)
           
 Expression getExpression()
          Returns the child Expression where the position of the cursor is.
 int getPosition()
          Returns the position of the cursor in the query.
 int getPosition(Expression expression)
          Returns the position of the cursor within the given Expression
(package private)  void removePosition(Expression expression)
          Removes the given Expression from the cached positions.
(package private)  void setExpression(Expression expression)
          Sets the deepest leaf where the cursor is located.
(package private)  QueryPosition transform(Expression leafExpression)
           
private  void transform(QueryPosition position, Expression expression)
           

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

expression

private Expression expression
The deepest child Expression where the position of the cursor is.

position

private int position
The position of the cursor in the query.

positions

private java.util.Map<Expression,java.lang.Integer> positions
The table containing the position of each of the Expression up to the deepest leaf.

Constructor Detail

QueryPosition

QueryPosition(int position)
Creates a new QueryPosition.
Parameters:
position - The position of the cursor in the query

Method Detail

addPosition

void addPosition(Expression expression,
                 int position)
Adds the position of the cursor within the given Expression
Parameters:
expression - An Expression in which the cursor is located
The - position of the cursor within the given Expression

adjustPosition

void adjustPosition(AbstractExpression parent,
                    Expression expression,
                    int adjustedPosition)

adjustPosition

QueryPosition adjustPosition(Expression expression,
                             int newPosition)

getExpression

public Expression getExpression()
Returns the child Expression where the position of the cursor is.
Returns:
The deepest Expression child that was retrieving by traversing the parsed tree up to the position of the cursor.

getPosition

public int getPosition()
Returns the position of the cursor in the query.
Returns:
The position of the cursor in the query

getPosition

public int getPosition(Expression expression)
Returns the position of the cursor within the given Expression
Parameters:
expression - The Expression for which the position of the cursor is requested
Returns:
Either the position of the cursor within the given Expression or -1 if the cursor is not within it

removePosition

void removePosition(Expression expression)
Removes the given Expression from the cached positions.
Parameters:
expression - The Expression that was registered with this object

setExpression

void setExpression(Expression expression)
Sets the deepest leaf where the cursor is located.
Parameters:
expression - The Expression that is the deepest leaf within the parsed tree

transform

QueryPosition transform(Expression leafExpression)

transform

private void transform(QueryPosition position,
                       Expression expression)

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.