org.apache.directory.server.core.cursor
Class IteratorCursor<E>
java.lang.Object
org.apache.directory.server.core.cursor.AbstractCursor<E>
org.apache.directory.server.core.cursor.IteratorCursor<E>
- All Implemented Interfaces:
- java.lang.Iterable<E>, Cursor<E>
public class IteratorCursor<E>
- extends AbstractCursor<E>
A limited Cursor over an Iterator of elements.
- Version:
- $Rev$, $Date$
- Author:
- Apache Directory Project
Method Summary |
void |
after(E element)
Prepares this Cursor, so a subsequent call to Cursor#previous() with a
true return value, will have positioned the Cursor on a dataset element
equal to or less than the element argument but not greater. |
void |
afterLast()
Positions this Curser after the last element. |
boolean |
available()
Determines whether or not a call to get() will succeed. |
void |
before(E element)
Prepares this Cursor, so a subsequent call to Cursor#next() with a
true return value, will have positioned the Cursor on a dataset
element equal to or less than the element argument but not greater. |
void |
beforeFirst()
Positions this Curser before the first element. |
boolean |
first()
Positions this Curser at the first element. |
E |
get()
Gets the object at the current position. |
boolean |
isElementReused()
Gets whether or not this Cursor will return the same element object
instance on get() operations for any position of this Cursor. |
boolean |
last()
Positions this Curser at the last element. |
boolean |
next()
Advances this Cursor to the next position. |
boolean |
previous()
Advances this Cursor to the previous position. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
IteratorCursor
public IteratorCursor(java.util.Iterator<E> values)
available
public boolean available()
- Description copied from interface:
Cursor
- Determines whether or not a call to get() will succeed.
- Returns:
- true if the cursor is valid get() will succeed, false otherwise
before
public void before(E element)
- Description copied from interface:
Cursor
- Prepares this Cursor, so a subsequent call to Cursor#next() with a
true return value, will have positioned the Cursor on a dataset
element equal to or less than the element argument but not greater.
A call to Cursor#previous() with a true return value will position
the Cursor on a dataset element less than the argument. If
Cursor#next() returns false then the Cursor is past the last element
and so all values in the dataset are less than the argument. If
Cursor#previous() returns false then the Cursor is positioned before
the first element and all elements in the dataset are greater than
the argument.
- Parameters:
element
- the element to be positioned before
after
public void after(E element)
- Description copied from interface:
Cursor
- Prepares this Cursor, so a subsequent call to Cursor#previous() with a
true return value, will have positioned the Cursor on a dataset element
equal to or less than the element argument but not greater. A call to
Cursor#next() with a true return value will position the Cursor on a
dataset element greater than the argument. If Cursor#next() returns
false then the Cursor is past the last element and so all values in the
dataset are less than or equal to the argument. If Cursor#previous()
returns false then the Cursor is positioned before the first element
and all elements in the dataset are greater than the argument.
- Parameters:
element
- the element to be positioned after
beforeFirst
public void beforeFirst()
- Description copied from interface:
Cursor
- Positions this Curser before the first element.
afterLast
public void afterLast()
- Description copied from interface:
Cursor
- Positions this Curser after the last element.
first
public boolean first()
- Description copied from interface:
Cursor
- Positions this Curser at the first element.
- Returns:
- true if the position has been successfully changed to the first
element, false otherwise
last
public boolean last()
- Description copied from interface:
Cursor
- Positions this Curser at the last element.
- Returns:
- true if the position has been successfully changed to the last
element, false otherwise
previous
public boolean previous()
- Description copied from interface:
Cursor
- Advances this Cursor to the previous position. If called before
explicitly positioning this Cursor, the position is presumed to be
after the last element and this method moves the cursor back to the
last element.
- Returns:
- true if the advance succeeded, false otherwise
next
public boolean next()
throws java.lang.Exception
- Description copied from interface:
Cursor
- Advances this Cursor to the next position. If called before
explicitly positioning this Cursor, the position is presumed to be
before the first element and this method moves the cursor forward to
the first element.
- Returns:
- true if the advance succeeded, false otherwise
- Throws:
java.lang.Exception
- if there are problems advancing to this Cursor to
the next position, or if this Cursor is closed
java.lang.UnsupportedOperationException
- if this method is not supported
get
public E get()
throws java.lang.Exception
- Description copied from interface:
Cursor
- Gets the object at the current position. Cursor implementations may
choose to reuse element objects by re-populating them on advances
instead of creating new objects on each advance.
- Returns:
- the object at the current position
- Throws:
java.lang.Exception
- if the object at this Cursor's current position
cannot be retrieved, or if this Cursor is closed
isElementReused
public boolean isElementReused()
- Description copied from interface:
Cursor
- Gets whether or not this Cursor will return the same element object
instance on get() operations for any position of this Cursor. Some
Cursor implementations may reuse the same element copying values into
it for every position rather than creating and emiting new element
objects on each advance. Some Cursor implementations may return
different elements for each position yet the same element instance
is returned for the same position. In these cases this method should
return true.
- Returns:
- true if elements are reused by this Cursor
Copyright © 2003-2009 Apache Software Foundation. All Rights Reserved.