Examples of NamedQueryDefinition


Examples of org.hibernate.engine.spi.NamedQueryDefinition

    }
    Iterator itr = namedQueries.entrySet().iterator();
    while ( itr.hasNext() ) {
      final Map.Entry entry = ( Map.Entry ) itr.next();
      final String queryName = ( String ) entry.getKey();
      final NamedQueryDefinition qd = ( NamedQueryDefinition ) entry.getValue();
      // this will throw an error if there's something wrong.
      try {
        LOG.debugf( "Checking named query: %s", queryName );
        //TODO: BUG! this currently fails for named queries for non-POJO entities
        queryPlanCache.getHQLQueryPlan( qd.getQueryString(), false, CollectionHelper.EMPTY_MAP );
      }
      catch ( QueryException e ) {
        errors.put( queryName, e );
      }
      catch ( MappingException e ) {
        errors.put( queryName, e );
      }
    }
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Checking %s named SQL queries", namedSqlQueries.size() );
    }
    itr = namedSqlQueries.entrySet().iterator();
    while ( itr.hasNext() ) {
      final Map.Entry entry = ( Map.Entry ) itr.next();
      final String queryName = ( String ) entry.getKey();
      final NamedSQLQueryDefinition qd = ( NamedSQLQueryDefinition ) entry.getValue();
      // this will throw an error if there's something wrong.
      try {
        LOG.debugf( "Checking named SQL query: %s", queryName );
        // TODO : would be really nice to cache the spec on the query-def so as to not have to re-calc the hash;
        // currently not doable though because of the resultset-ref stuff...
        NativeSQLQuerySpecification spec;
        if ( qd.getResultSetRef() != null ) {
          ResultSetMappingDefinition definition = sqlResultSetMappings.get( qd.getResultSetRef() );
          if ( definition == null ) {
            throw new MappingException( "Unable to find resultset-ref definition: " + qd.getResultSetRef() );
          }
          spec = new NativeSQLQuerySpecification(
              qd.getQueryString(),
                  definition.getQueryReturns(),
                  qd.getQuerySpaces()
          );
        }
        else {
          spec =  new NativeSQLQuerySpecification(
              qd.getQueryString(),
                  qd.getQueryReturns(),
                  qd.getQuerySpaces()
          );
        }
        queryPlanCache.getNativeSQLQueryPlan( spec );
      }
      catch ( QueryException e ) {
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

      throw new AnnotationException( "A named query must have a name when used in class or package level" );
    }
    //EJBQL Query
    QueryHint[] hints = queryAnn.hints();
    String queryName = queryAnn.query();
    NamedQueryDefinition query = new NamedQueryDefinition(
        queryAnn.name(),
        queryName,
        getBoolean( queryName, "org.hibernate.cacheable", hints ),
        getString( queryName, "org.hibernate.cacheRegion", hints ),
        getTimeout( queryName, hints ),
        getInteger( queryName, "org.hibernate.fetchSize", hints ),
        getFlushMode( queryName, hints ),
        getCacheMode( queryName, hints ),
        getBoolean( queryName, "org.hibernate.readOnly", hints ),
        getString( queryName, "org.hibernate.comment", hints ),
        null
    );
    if ( isDefault ) {
      mappings.addDefaultQuery( query.getName(), query );
    }
    else {
      mappings.addQuery( query.getName(), query );
    }
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Binding named query: %s => %s", query.getName(), query.getQueryString() );
    }
  }
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

      throw new AnnotationException( "A named query must have a name when used in class or package level" );
    }
    FlushMode flushMode;
    flushMode = getFlushMode( queryAnn.flushMode() );

    NamedQueryDefinition query = new NamedQueryDefinition(
        queryAnn.name(),
        queryAnn.query(),
        queryAnn.cacheable(),
        BinderHelper.isEmptyAnnotationValue( queryAnn.cacheRegion() ) ? null : queryAnn.cacheRegion(),
        queryAnn.timeout() < 0 ? null : queryAnn.timeout(),
        queryAnn.fetchSize() < 0 ? null : queryAnn.fetchSize(),
        flushMode,
        getCacheMode( queryAnn.cacheMode() ),
        queryAnn.readOnly(),
        BinderHelper.isEmptyAnnotationValue( queryAnn.comment() ) ? null : queryAnn.comment(),
        null
    );

    mappings.addQuery( query.getName(), query );
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Binding named query: %s => %s", query.getName(), query.getQueryString() );
    }
  }
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

  }

  @Override
  public Query getNamedQuery(String queryName) throws MappingException {
    errorIfClosed();
    NamedQueryDefinition nqd = factory.getNamedQuery( queryName );
    final Query query;
    if ( nqd != null ) {
      String queryString = nqd.getQueryString();
      query = new QueryImpl(
          queryString,
              nqd.getFlushMode(),
              this,
              getHQLQueryPlan( queryString, false ).getParameterMetadata()
      );
      query.setComment( "named HQL query " + queryName );
    }
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

    }
    Iterator itr = namedQueries.entrySet().iterator();
    while ( itr.hasNext() ) {
      final Map.Entry entry = ( Map.Entry ) itr.next();
      final String queryName = ( String ) entry.getKey();
      final NamedQueryDefinition qd = ( NamedQueryDefinition ) entry.getValue();
      // this will throw an error if there's something wrong.
      try {
        LOG.debugf( "Checking named query: %s", queryName );
        //TODO: BUG! this currently fails for named queries for non-POJO entities
        queryPlanCache.getHQLQueryPlan( qd.getQueryString(), false, Collections.EMPTY_MAP );
      }
      catch ( QueryException e ) {
        errors.put( queryName, e );
      }
      catch ( MappingException e ) {
        errors.put( queryName, e );
      }


    }
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Checking %s named SQL queries", namedSqlQueries.size() );
    }
    itr = namedSqlQueries.entrySet().iterator();
    while ( itr.hasNext() ) {
      final Map.Entry entry = ( Map.Entry ) itr.next();
      final String queryName = ( String ) entry.getKey();
      final NamedSQLQueryDefinition qd = ( NamedSQLQueryDefinition ) entry.getValue();
      // this will throw an error if there's something wrong.
      try {
        LOG.debugf( "Checking named SQL query: %s", queryName );
        // TODO : would be really nice to cache the spec on the query-def so as to not have to re-calc the hash;
        // currently not doable though because of the resultset-ref stuff...
        NativeSQLQuerySpecification spec;
        if ( qd.getResultSetRef() != null ) {
          ResultSetMappingDefinition definition = sqlResultSetMappings.get( qd.getResultSetRef() );
          if ( definition == null ) {
            throw new MappingException( "Unable to find resultset-ref definition: " + qd.getResultSetRef() );
          }
          spec = new NativeSQLQuerySpecification(
              qd.getQueryString(),
                  definition.getQueryReturns(),
                  qd.getQuerySpaces()
          );
        }
        else {
          spec =  new NativeSQLQuerySpecification(
              qd.getQueryString(),
                  qd.getQueryReturns(),
                  qd.getQuerySpaces()
          );
        }
        queryPlanCache.getNativeSQLQueryPlan( spec );
      }
      catch ( QueryException e ) {
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

    Attribute cacheModeAtt = queryElem.attribute( "cache-mode" );
    String cacheMode = cacheModeAtt == null ? null : cacheModeAtt.getValue();
    Attribute cmAtt = queryElem.attribute( "comment" );
    String comment = cmAtt == null ? null : cmAtt.getValue();

    NamedQueryDefinition namedQuery = new NamedQueryDefinition(
        queryName,
        query,
        cacheable,
        region,
        timeout,
        fetchSize,
        getFlushMode( queryElem.attributeValue( "flush-mode" ) ) ,
        getCacheMode( cacheMode ),
        readOnly,
        comment,
        getParameterTypes(queryElem)
      );

    mappings.addQuery( namedQuery.getName(), namedQuery );
  }
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

  }

  @Override
  public Query getNamedQuery(String queryName) throws MappingException {
    errorIfClosed();
    NamedQueryDefinition nqd = factory.getNamedQuery( queryName );
    final Query query;
    if ( nqd != null ) {
      String queryString = nqd.getQueryString();
      query = new QueryImpl(
          queryString,
              nqd.getFlushMode(),
              this,
              getHQLQueryPlan( queryString, false ).getParameterMetadata()
      );
      query.setComment( "named HQL query " + queryName );
      if ( nqd.getLockTimeout() != null ) {
        ( (QueryImpl) query ).getLockOptions().setTimeOut( nqd.getLockTimeout() );
      }
    }
    else {
      NamedSQLQueryDefinition nsqlqd = factory.getNamedSQLQuery( queryName );
      if ( nsqlqd==null ) {
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

    if ( StringHelper.isEmpty( comment ) ) {
      comment = null;
    }

    metadata.addNamedQuery(
        new NamedQueryDefinition(
            name,
            query, getBoolean( hints, QueryHints.CACHEABLE, name ), cacheRegion,
            timeout, fetchSize, getFlushMode( hints, QueryHints.FLUSH_MODE, name ),
            getCacheMode( hints, QueryHints.CACHE_MODE, name ),
            getBoolean( hints, QueryHints.READ_ONLY, name ), comment, null
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

      throw new AnnotationException( "A named query must have a name when used in class or package level" );
    }
    //EJBQL Query
    QueryHint[] hints = queryAnn.hints();
    String queryName = queryAnn.query();
    NamedQueryDefinition query = new NamedQueryDefinition(
        queryAnn.name(),
        queryName,
        getBoolean( queryName, "org.hibernate.cacheable", hints ),
        getString( queryName, "org.hibernate.cacheRegion", hints ),
        getTimeout( queryName, hints ),
        getInteger( queryName, "javax.persistence.lock.timeout", hints ),
        getInteger( queryName, "org.hibernate.fetchSize", hints ),
        getFlushMode( queryName, hints ),
        getCacheMode( queryName, hints ),
        getBoolean( queryName, "org.hibernate.readOnly", hints ),
        getString( queryName, "org.hibernate.comment", hints ),
        null
    );
    if ( isDefault ) {
      mappings.addDefaultQuery( query.getName(), query );
    }
    else {
      mappings.addQuery( query.getName(), query );
    }
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Binding named query: %s => %s", query.getName(), query.getQueryString() );
    }
  }
View Full Code Here

Examples of org.hibernate.engine.spi.NamedQueryDefinition

      throw new AnnotationException( "A named query must have a name when used in class or package level" );
    }
    FlushMode flushMode;
    flushMode = getFlushMode( queryAnn.flushMode() );

    NamedQueryDefinition query = new NamedQueryDefinition(
        queryAnn.name(),
        queryAnn.query(),
        queryAnn.cacheable(),
        BinderHelper.isEmptyAnnotationValue( queryAnn.cacheRegion() ) ? null : queryAnn.cacheRegion(),
        queryAnn.timeout() < 0 ? null : queryAnn.timeout(),
        queryAnn.fetchSize() < 0 ? null : queryAnn.fetchSize(),
        flushMode,
        getCacheMode( queryAnn.cacheMode() ),
        queryAnn.readOnly(),
        BinderHelper.isEmptyAnnotationValue( queryAnn.comment() ) ? null : queryAnn.comment(),
        null
    );

    mappings.addQuery( query.getName(), query );
    if ( LOG.isDebugEnabled() ) {
      LOG.debugf( "Binding named query: %s => %s", query.getName(), query.getQueryString() );
    }
  }
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.