Examples of HqlParser


Examples of org.hibernate.hql.internal.ast.HqlParser

  public TypedQueryFactoryGenerator(EntityManager em, NamedQuery namedQuery) {
    this.jpaQuery = Assert.notNull(namedQuery.query());

    try {
      HqlParser parser = HqlParser.getInstance(jpaQuery);
      parser.statement();
      AST hqlAst = parser.getAST();

      if (logger.isDebugEnabled()) {
        logger.debug("First-level parse tree for " + namedQuery.name() + ":");
        parser.showAst(hqlAst, System.out);
      }

      SessionImplementor hibernateSession = em.unwrap(SessionImplementor.class);
      ASTQueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
      query = (QueryTranslatorImpl) translatorFactory.createQueryTranslator(
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

  public TypedQueryFactoryGenerator(EntityManager em, NamedQuery namedQuery) {
    this.jpaQuery = Assert.notNull(namedQuery.query());

    try {
      HqlParser parser = HqlParser.getInstance(jpaQuery);
      parser.statement();
      AST hqlAst = parser.getAST();
      parser.showAst(hqlAst, System.out);

      SessionImplementor hibernateSession = em.unwrap(SessionImplementor.class);
      ASTQueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
      query = (QueryTranslatorImpl) translatorFactory.createQueryTranslator(
              namedQuery.name(), jpaQuery, java.util.Collections.EMPTY_MAP, hibernateSession.getFactory());
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

  public TypedQueryFactoryGenerator(EntityManager em, NamedQuery namedQuery) {
    this.jpaQuery = Assert.notNull(namedQuery.query());

    try {
      HqlParser parser = HqlParser.getInstance(jpaQuery);
      parser.statement();
      AST hqlAst = parser.getAST();

      if (logger.isDebugEnabled()) {
        logger.debug("First-level parse tree for " + namedQuery.name() + ":");
        parser.showAst(hqlAst, System.out);
      }

      SessionImplementor hibernateSession = em.unwrap(SessionImplementor.class);
      ASTQueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
      query = (QueryTranslatorImpl) translatorFactory.createQueryTranslator(
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

    public void parse() throws RecognitionException, TokenStreamException {
        try {
            String input = toString();
            logger.debug("input: " + input.replace('\n', ' '));
            HqlParser parser = HqlParser.getInstance(input);
            parser.setFilter(false);
            parser.statement();
            AST ast = parser.getAST();
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            parser.showAst(ast, new PrintStream(baos));
            assertEquals("At least one error occurred during parsing " + input,
                    0, parser.getParseErrorHandler().getErrorCount());
        } finally {
            // clear();
        }
    }
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

  public TypedQueryFactoryGenerator(EntityManager em, NamedQuery namedQuery) {
    this.jpaQuery = Assert.notNull(namedQuery.query());

    try {
      HqlParser parser = HqlParser.getInstance(jpaQuery);
      parser.statement();
      AST hqlAst = parser.getAST();

      if (logger.isDebugEnabled()) {
        logger.debug("First-level parse tree for " + namedQuery.name() + ":");
        parser.showAst(hqlAst, System.out);
      }

      SessionImplementor hibernateSession = em.unwrap(SessionImplementor.class);
      ASTQueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
      query = (QueryTranslatorImpl) translatorFactory.createQueryTranslator(
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

    if ( replacements == null ) {
      replacements = Collections.emptyMap();
    }

    // PHASE 1 : Parse the HQL into an AST.
    final HqlParser parser = parse( true );

    // PHASE 2 : Analyze the HQL AST, and produce an SQL AST.
    final HqlSqlWalker w = analyze( parser, replacements, collectionRole );

    return w.getSelectClause();
View Full Code Here

Examples of org.hibernate.hql.internal.ast.HqlParser

    return w;
  }

  private HqlParser parse(boolean filter) throws TokenStreamException, RecognitionException {
    // Parse the query string into an HQL AST.
    final HqlParser parser = HqlParser.getInstance( query );
    parser.setFilter( filter );

    parser.statement();

    final AST hqlAst = parser.getAST();

    final NodeTraverser walker = new NodeTraverser( new JavaConstantConverter() );
    walker.traverseDepthFirst( hqlAst );

    parser.getParseErrorHandler().throwQueryException();
    return parser;
  }
View Full Code Here

Examples of org.hibernate.sql.ast.origin.hql.parse.HQLParser

  @Override
  public Query getParsedQueryExecutor(Session session, String queryString, Map<String, Object> namedParameters) {
    HQLLexer lexed = new HQLLexer( new ANTLRStringStream( queryString ) );
    TokenStream tokens = new CommonTokenStream( lexed );
    HQLParser parser = new HQLParser( tokens );
    try {
      //TODO move the following logic into the hibernate-jpql-parser project?
      //needs to consider usage of a parsed query plans cache

      // parser#statement() is the entry point for evaluation of any kind of statement
      HQLParser.statement_return r = parser.statement();
      CommonTree tree = (CommonTree) r.getTree();
      // To walk the resulting tree we need a treenode stream:
      CommonTreeNodeStream treeStream = new CommonTreeNodeStream( tree );
      // AST nodes have payloads referring to the tokens from the Lexer:
      treeStream.setTokenStream( tokens );
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.