@Override public boolean isNamed() { return this.query.isNamed(); }
@Override public boolean isNamed() { return getWrappedQuery().isNamed(); }
@Override public String getMessage() { if (query == null) { return super.getMessage(); } else { if (query.isNamed()) { return super.getMessage() + ". Named query = [" + query.getStatement() + "]"; } else { return super.getMessage() + ". Query statement = [" + query.getStatement() + "]"; } } } }
/** * @param session hibernate session * @param query Query object * @return hibernate query */ protected org.hibernate.Query createHibernateQuery(Session session, Query query) { return query.isNamed() ? session.getNamedQuery(query.getStatement()) : session.createQuery(query.getStatement()); }
@Override public <T> List<T> execute(Query query) throws QueryException { if (query.isNamed()) { return this.namedQueryExecutorProvider.get().execute(query); } else { try { return this.componentManagerProvider.get() .<QueryExecutor>getInstance(QueryExecutor.class, query.getLanguage()).execute(query); } catch (ComponentLookupException e) { throw new QueryException("Fail to lookup query executor", query, e); } } }