org.apache.directory.server.xdbm.search.impl
Class GreaterEqCursor<V,ID extends Comparable<ID>>

java.lang.Object
  extended by org.apache.directory.shared.ldap.model.cursor.AbstractCursor<IndexEntry<V,ID>>
      extended by org.apache.directory.server.xdbm.AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID>
          extended by org.apache.directory.server.xdbm.search.impl.GreaterEqCursor<V,ID>
All Implemented Interfaces:
Iterable<IndexEntry<V,ID>>, IndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID>, org.apache.directory.shared.ldap.model.cursor.Cursor<IndexEntry<V,ID>>

public class GreaterEqCursor<V,ID extends Comparable<ID>>
extends AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID>

A Cursor over entry candidates matching a GreaterEq assertion filter. This Cursor operates in two modes. The first is when an index exists for the attribute the assertion is built on. The second is when the user index for the assertion attribute does not exist. Different Cursors are used in each of these cases where the other remains null.

Author:
Apache Directory Project

Constructor Summary
GreaterEqCursor(Store<org.apache.directory.shared.ldap.model.entry.Entry,ID> db, GreaterEqEvaluator<V,ID> greaterEqEvaluator)
          Creates a new instance of an GreaterEqCursor
 
Method Summary
 void after(IndexEntry<V,ID> element)
          
 void afterLast()
          
 void afterValue(ID id, V value)
          An alternative to calling after(IndexEntry) which often may require wrapping an id and value in a newly created IndexEntry object that may be an unnecessary object creation.
 void before(IndexEntry<V,ID> element)
          
 void beforeFirst()
          
 void beforeValue(ID id, V value)
          An alternative to calling before(IndexEntry) which often may require wrapping an id and value in a newly created IndexEntry object that may be an unnecessary object creation.
 void close()
          
 boolean first()
          
 IndexEntry<V,ID> get()
          
protected  String getUnsupportedMessage()
          Gets the message to return for operations that are not supported
 boolean last()
          
 boolean next()
          
 boolean previous()
          
 
Methods inherited from class org.apache.directory.server.xdbm.AbstractIndexCursor
available, isAfterLast, isBeforeFirst, isFirst, isLast, iterator, setAvailable
 
Methods inherited from class org.apache.directory.shared.ldap.model.cursor.AbstractCursor
checkNotClosed, close, isClosed, setClosureMonitor
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.directory.shared.ldap.model.cursor.Cursor
close, isClosed, setClosureMonitor
 

Constructor Detail

GreaterEqCursor

public GreaterEqCursor(Store<org.apache.directory.shared.ldap.model.entry.Entry,ID> db,
                       GreaterEqEvaluator<V,ID> greaterEqEvaluator)
                throws Exception
Creates a new instance of an GreaterEqCursor

Parameters:
db - The store
equalityEvaluator - The GreaterEqEvaluator
Throws:
Exception - If the creation failed
Method Detail

getUnsupportedMessage

protected String getUnsupportedMessage()
Gets the message to return for operations that are not supported

Specified by:
getUnsupportedMessage in class AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Returns:
The Unsupported message

beforeValue

public void beforeValue(ID id,
                        V value)
                 throws Exception
An alternative to calling before(IndexEntry) which often may require wrapping an id and value in a newly created IndexEntry object that may be an unnecessary object creation. Some implementations may not support this operation and may throw an UnsupportedOperationEception.

Specified by:
beforeValue in interface IndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Overrides:
beforeValue in class AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Parameters:
id - the id for the entry
value - the value to advance just before
Throws:
Exception - if there are faults performing this operation

afterValue

public void afterValue(ID id,
                       V value)
                throws Exception
An alternative to calling after(IndexEntry) which often may require wrapping an id and value in a newly created IndexEntry object that may be an unnecessary object creation. Some implementations may not support this operation and may throw an UnsupportedOperationEception.

Specified by:
afterValue in interface IndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Overrides:
afterValue in class AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Parameters:
id - the id for the entry
value - the value to advance just after the last value
Throws:
Exception - if there are faults performing this operation

before

public void before(IndexEntry<V,ID> element)
            throws Exception

Specified by:
before in interface org.apache.directory.shared.ldap.model.cursor.Cursor<IndexEntry<V,ID extends Comparable<ID>>>
Overrides:
before in class AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Throws:
Exception

after

public void after(IndexEntry<V,ID> element)
           throws Exception

Specified by:
after in interface org.apache.directory.shared.ldap.model.cursor.Cursor<IndexEntry<V,ID extends Comparable<ID>>>
Overrides:
after in class AbstractIndexCursor<V,org.apache.directory.shared.ldap.model.entry.Entry,ID extends Comparable<ID>>
Throws:
Exception

beforeFirst

public void beforeFirst()
                 throws Exception

Throws:
Exception

afterLast

public void afterLast()
               throws Exception

Throws:
Exception

first

public boolean first()
              throws Exception

Throws:
Exception

last

public boolean last()
             throws Exception

Throws:
Exception

previous

public boolean previous()
                 throws Exception

Throws:
Exception

next

public boolean next()
             throws Exception

Throws:
Exception

get

public IndexEntry<V,ID> get()
                                            throws Exception

Throws:
Exception

close

public void close()
           throws Exception

Specified by:
close in interface org.apache.directory.shared.ldap.model.cursor.Cursor<IndexEntry<V,ID extends Comparable<ID>>>
Overrides:
close in class org.apache.directory.shared.ldap.model.cursor.AbstractCursor<IndexEntry<V,ID extends Comparable<ID>>>
Throws:
Exception


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.