directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gerald Turner (JIRA)" <>
Subject [jira] [Created] (DIRSHARED-124) SearchCursorImpl breaks java.lang.Iterable
Date Tue, 03 May 2011 22:29:03 GMT
SearchCursorImpl breaks java.lang.Iterable

                 Key: DIRSHARED-124
             Project: Directory Shared
          Issue Type: Bug
    Affects Versions: 1.0.0-M3
            Reporter: Gerald Turner
            Priority: Minor

Code like:

  SearchCursor search =;
  for (Response response : search) { ... }

Does not work (no elements iterated), even though SearchCursor is advertised as being Iterable<Response>.

The problem begins with the CursorIterator constructor:

    public CursorIterator( Cursor<E> cursor )
        this.cursor = cursor;
        this.available = cursor.available();

The available field will be set to false for SearchCursorImpl, just as the javadoc in Cursor
implies "Determines whether or not a call to get() will succeed." - since next() must be called

Initially I thought about patching the CursorIterator to call next() instead of available(),
however next throws an exception and it is impractical to handle an exception in the iterator

This message is automatically generated by JIRA.
For more information on JIRA, see:

View raw message