private void nextQueue ( ) { if ( super . hasNext ( ) ) { do { if ( _currentSubIterator != null ) _currentSubIterator . finished ( ) ; _currentSubIterator = null ; _currentQueue = ( SIMPQueueControllable ) super . next ( ) ; try { _currentSubIterator = _currentQueue . getRemoteQueuePointIterator ( ) ; } catch ( SIMPException e ) { // No FFDC code needed if ( tc . isDebugEnabled ( ) ) SibTr . exception ( tc , e ) ; } } // Retry if we failed to get an iterator, that iterator does not // have any remote queue points in it and we have more queues available. while ( ( _currentSubIterator == null || ! _currentSubIterator . hasNext ( ) ) && super . hasNext ( ) ) ; } else { _currentQueue = null ; if ( _currentSubIterator != null ) _currentSubIterator . finished ( ) ; _currentSubIterator = null ; } }
Move to the next stream which has active ranges