private Criteria getCriteria(Session s) { Criteria crit = s.createCriteria( A.class, "anAlias" ); crit.add( Restrictions.naturalId().set( "name", "name1" ) ); crit.setFlushMode( FlushMode.COMMIT ); crit.setCacheable( true ); return crit; }
@Override public Criteria setFlushMode(FlushMode flushMode) { backingCriteria.setFlushMode(flushMode); return this; }
@Override public Criteria setFlushMode(final FlushMode flushMode) { return criteria.setFlushMode(flushMode); }
@Override @SuppressWarnings("unchecked") public U getUserByUsername(String username) { Session s = hibernateStore.getSession(); List l = s.createCriteria(getUserClass()) .add(Restrictions.eq("username", username)) .setFlushMode(FlushMode.MANUAL) .list(); if (l.size()==0) { return null; } if (l.size()>1) { throw new IllegalStateException("more than 1 users with username==" + username); } return (U)l.get(0); }
@Override @SuppressWarnings("unchecked") public U getUserByEmail(String email) { Session s = hibernateStore.getSession(); List l = s.createCriteria(getUserClass()) .add(Restrictions.eq("email", email)) .setFlushMode(FlushMode.MANUAL) .list(); if (l.size()==0) { return null; } if (l.size()>1) { throw new IllegalStateException("more than 1 users with email==" + email); } return (U)l.get(0); }
/** * crates a Stream with given {@link Criteria} crit * * @param crit * - given Criteria * @return new {@link Stream} with given ResultSet */ public <T> Stream<T> stream(Criteria crit) { if(TransactionStatus.NOT_ACTIVE.equals(session.getTransaction().getStatus())) session.beginTransaction(); if (loggingEnabled) logQuery(false); return StreamSupport.<T> stream(Spliterators.spliteratorUnknownSize( new QueryIterator<T>(crit.setCacheMode(CacheMode.IGNORE) .setFlushMode(FlushMode.MANUAL), this, false), Spliterator.ORDERED | Spliterator.DISTINCT), false); }
.setLockMode( LockMode.NONE ) .setCacheable( false ) .setFlushMode( FlushMode.MANUAL ) .setFetchSize( listIds.size() ) .setResultTransformer( CriteriaSpecification.DISTINCT_ROOT_ENTITY )
c.setFlushMode(convertFlushMode(argMap.get(DynamicFinder.ARGUMENT_FLUSH_MODE)));
c.setFlushMode(converter.convertIfNecessary(argMap.get(ARGUMENT_FLUSH_MODE),FlushMode.class));
.setLockMode( LockMode.NONE ) .setCacheable( false ) .setFlushMode( FlushMode.MANUAL ) .setFetchSize( listIds.size() ) .setResultTransformer( CriteriaSpecification.DISTINCT_ROOT_ENTITY )
.setCacheable( false ) .setLockMode( LockMode.NONE ) .setFlushMode( FlushMode.MANUAL ) .setCacheMode( cacheMode ) .setFetchSize( entityFetchSize )