## org.hibernate.hql.ast.util
Class JoinProcessor

    java.lang.Object
      org.hibernate.hql.ast.util.JoinProcessor

All Implemented Interfaces:
  SqlTokenTypes

    public class JoinProcessor

extends Object
implements SqlTokenTypes

Performs the post-processing of the join information gathered during semantic analysis. The join generating classes are complex, this encapsulates some of the JoinSequence-related code.

Author:
  Joshua Davis

Field Summary

Fields inherited from interface org.hibernate.hql.antlr.SqlTokenTypes

`AGGREGATE, ALIAS, ALIAS_REF, ALL, AND, ANY, AS, ASCENDING, AVG, BETWEEN, BOGUS, BOTH, CASE, CASE2, CLASS, CLOSE, CLOSE_BRACKET, COLON, COMMA, CONCAT, CONSTANT, CONSTRUCTOR, COUNT, DELETE, DESCENDING, DISTINCT, DIV, DOT, ELEMENTS, ELSE, EMPTY, END, ENTRY, EOF, EQ, ESCAPE, ESCqs, EXISTS, EXPONENT, EXPR_LIST, FALSE, FETCH, FILTER_ENTITY, FILTERS, FLOAT_SUFFIX, FROM, FROM_FRAGMENT, FULL, GE, GROUP, GT, HAVING, HEX_DIGIT, ID_LETTER, ID_START_LETTER, IDENT, IMPLIED_FROM, IN, IN_LIST, INDEX_OP, INDICES, INNER, INSERT, INTO, IS, IS_NOT_NULL, IS_NULL, JAVA_CONSTANT, JOIN, JOIN_FRAGMENT, KEY, LE, LEADING, LEFT, LEFT_OUTER, LIKE, LITERAL_ascending, LITERAL_by, LITERAL_descending, LT, MAX, MEMBER, METHOD_CALL, METHOD_NAME, MIN, MINUS, MOD, NAMED_PARAM, NE, NEW, NOT, NOT_BETWEEN, NOT_IN, NOT_LIKE, NULL, NULL_TREE_LOOKAHEAD, NUM_BIG_DECIMAL, NUM_BIG_INTEGER, NUM_DOUBLE, NUM_FLOAT, NUM_INT, NUM_LONG, OBJECT, OF, ON, OPEN, OPEN_BRACKET, OR, ORDER, ORDER_ELEMENT, OUTER, PARAM, PLUS, PROPERTIES, PROPERTY_REF, QUERY, QUOTED_STRING, RANGE, RESULT_VARIABLE_REF, RIGHT, RIGHT_OUTER, ROW_STAR, SELECT, SELECT_CLAUSE, SELECT_COLUMNS, SELECT_EXPR, SELECT_FROM, SET, SOME, SQL_NE, SQL_NODE, SQL_TOKEN, STAR, SUM, THEN, THETA_JOINS, TRAILING, TRUE, UNARY_MINUS, UNARY_PLUS, UNION, UPDATE, VALUE, VECTOR_EXPR, VERSIONED, WEIRD_IDENT, WHEN, WHERE, WITH, WS`

Constructor Summary
`JoinProcessor(HqlSqlWalker walker)` Constructs a new JoinProcessor.

Method Summary
`static void` `processDynamicFilterParameters(String sqlFragment, ParameterContainer container, HqlSqlWalker walker)`
`void` `processJoins(QueryNode query)`
`static int` `toHibernateJoinType(int astJoinType)` Translates an AST join type (i.e., the token type) into a JoinFragment.XXX join type.

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

Constructor Detail

### JoinProcessor

    public JoinProcessor(HqlSqlWalker walker)

  Constructs a new JoinProcessor.

  Parameters:
    `walker` - The walker to which we are bound, giving us access to needed resources.

Method Detail

### toHibernateJoinType

    public static int toHibernateJoinType(int astJoinType)

  Translates an AST join type (i.e., the token type) into a JoinFragment.XXX join type.

  Parameters:
    `astJoinType` - The AST join type (from HqlSqlTokenTypes or SqlTokenTypes)
  Returns:
    a JoinFragment.XXX join type.
  See Also:
    `JoinFragment`, `SqlTokenTypes`

### processJoins

    public void processJoins(QueryNode query)

### processDynamicFilterParameters

    public static void processDynamicFilterParameters(String sqlFragment,
                                                      ParameterContainer container,
                                                      HqlSqlWalker walker)

Copyright © 2001-2010 Red Hat, Inc. All Rights Reserved.