public Type[] getReturnTypes(String queryString) throws HibernateException { final ReturnMetadata metadata = queryPlanCache.getHQLQueryPlan( queryString, false, Collections.EMPTY_MAP ) .getReturnMetadata(); return metadata == null ? null : metadata.getReturnTypes(); }
public String[] getReturnAliases(String queryString) throws HibernateException { final ReturnMetadata metadata = queryPlanCache.getHQLQueryPlan( queryString, false, Collections.EMPTY_MAP ) .getReturnMetadata(); return metadata == null ? null : metadata.getReturnAliases(); }
private OrdinalParameterDescriptor complete() { return new OrdinalParameterDescriptor( identifier, valuePosition, null, new int[] { sourcePosition } ); } }
@Override public ParameterMetadataImpl getParameterMetadata(String nativeQuery) { final ParamLocationRecognizer recognizer = ParamLocationRecognizer.parseLocations( nativeQuery, sessionFactory ); return new ParameterMetadataImpl( recognizer.getOrdinalParameterDescriptionMap(), recognizer.getNamedParameterDescriptionMap() ); }
/** * Convenience method for creating a param location recognizer and * initiating the parse. * * @param query The query to be parsed for parameter locations. * @param sessionFactory * @return The generated recognizer, with journaled location info. */ public static ParamLocationRecognizer parseLocations( String query, SessionFactoryImplementor sessionFactory) { final ParamLocationRecognizer recognizer = new ParamLocationRecognizer( sessionFactory.getSessionFactoryOptions().jdbcStyleParamsZeroBased() ? 0 : 1 ); ParameterParser.parse( query, recognizer ); return recognizer; }
private boolean isSelect() { return getProducer().getFactory().getQueryPlanCache() .getHQLQueryPlan( getQueryString(), false, Collections.<String, Filter>emptyMap() ) .isSelect(); }
protected HQLQueryPlan createQueryPlan(String hql, boolean scalar) { return new HQLQueryPlan( hql, scalar, Collections.EMPTY_MAP, sessionFactory() ); }
@Override public ScrollableResultsImplementor scroll(NativeSQLQuerySpecification spec, QueryParameters queryParameters) { return scrollCustomQuery( getNativeQueryPlan( spec ).getCustomQuery(), queryParameters ); }
@Override public void namedParameter(String name, int position) { getOrBuildNamedParameterDescription( name ).add( position ); }
private NamedParameterDescriptor complete() { return new NamedParameterDescriptor( name, null, ArrayHelper.toIntArray( sourcePositions ) ); } }
@Override public ScrollableResultsImplementor scroll(String query, QueryParameters queryParameters) throws HibernateException { checkOpen(); HQLQueryPlan plan = getQueryPlan( query, false ); return plan.performScroll( queryParameters, this ); }
@Override public Iterator iterateFilter(Object collection, String filter, QueryParameters queryParameters) { checkOpenOrWaitingForAutoClose(); checkTransactionSynchStatus(); FilterQueryPlan plan = getFilterQueryPlan( collection, filter, queryParameters, true ); Iterator itr = plan.performIterate( queryParameters, this ); delayedAfterCompletion(); return itr; }
/** * Obtain the parameter metadata for given native-sql query. * <p/> * for native-sql queries, the param metadata is determined outside any relation to a query plan, because * query plan creation and/or retrieval for a native-sql query depends on all of the return types having been * set, which might not be the case up-front when param metadata would be most useful * * @param query The query * @return The parameter metadata */ public ParameterMetadata getSQLParameterMetadata(final String query, boolean isOrdinalParameterZeroBased) { final ParameterMetadataKey key = new ParameterMetadataKey( query, isOrdinalParameterZeroBased ); ParameterMetadataImpl value = parameterMetadataCache.get( key ); if ( value == null ) { value = nativeQueryInterpreter.getParameterMetadata( query ); parameterMetadataCache.putIfAbsent( key, value ); } return value; }
@Override public Type getHibernateType() { return getExpectedType(); }
@Override public void jpaPositionalParameter(int name, int position) { getOrBuildJpaOrdinalParameterDescription( name ).add( position ); }
/** * @deprecated (5.4) Use {@link #getGraph} */ @Deprecated public EntityGraph<?> getOriginEntityGraph() { return getGraph(); }
/** * @deprecated (5.4) Use {@link #getSemantic} */ @Deprecated public GraphSemantic getGraphSemantic() { return getSemantic(); }
@Override public int hashCode() { return getName().hashCode(); } }
private OrdinalParameterDescriptor complete() { return new OrdinalParameterDescriptor( identifier, identifier - 1, null, ArrayHelper.toIntArray( sourcePositions ) ); } }
@Override public List list(NativeSQLQuerySpecification spec, QueryParameters queryParameters) { return listCustomQuery( getNativeQueryPlan( spec ).getCustomQuery(), queryParameters ); }