public Iterator<E> graphIterator( EntityManager em ) { try { if ( uuid != null && type != null ) { return new PagingResultsIterator( getHeadResults( em ), query.getResultsLevel(), null); }else { return new NotificationGraphIterator(em, source.refIterator(em, true), query); } } catch ( Exception e ) { throw new RuntimeException( e ); } }
public Iterator<E> iterator( EntityManager em ) { try { if ( uuid != null && type != null ) { return new PagingResultsIterator( getHeadResults( em ), query.getResultsLevel(), null); } else { return new MultiQueryIterator( em, source.refIterator( em, false), query ); } } catch ( Exception e ) { throw new RuntimeException( e ); } }
protected Iterator refIterator(EntityManager em, boolean useGraph) throws Exception { if ( query.getQl() == null && query.getSingleNameOrEmailIdentifier() != null){ return new PagingResultsIterator( getHeadResults( em ), Level.REFS, null); } if ( type != null && uuid != null) { return new PagingResultsIterator( getHeadResults( em ), Level.REFS, null); } else { Query q = query; if ( query.getResultsLevel() != Level.REFS ) { // ensure REFS level q = new Query( q ); q.setResultsLevel( Level.REFS ); } if( useGraph){ return new NotificationGraphIterator( em, source.refIterator( em, true), q ); }else{ return new MultiQueryIterator( em, source.refIterator( em, false ), q ); } } }