Package com.netscape.certsrv.dbs
Class DBVirtualList<E extends IDBObj>
java.lang.Object
com.netscape.certsrv.dbs.DBVirtualList<E>
- Direct Known Subclasses:
LDAPVirtualList
A class represents a virtual list of search results.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
getElementAt
(int index) Fetchs data of a single list item Recommend to call getSize() before getElementAt() or getElements() since you'd better check if the index is out of bound first.int
Gets the top of the buffergetJumpToElementAt
(int i) Retrieves and jumps to element in the given position.boolean
getPage
(int first) Get a page starting at "first" (although we may also fetch some preceding entries) Recommend to call getSize() before getElementAt() or getElements() since you'd better check if the index is out of bound first.boolean
Called by application to scroll the list with initial letters.int
Gets the virutal selected indexint
getSize()
Retrieves the size of this virtual list.int
int
Returns current index.void
processElements
(int startidx, int endidx, ElementProcessor ep) Processes elements as soon as it arrives.void
setPageSize
(int size) Sets the paging size of this virtual list.void
setSortKey
(String sortKey) Sets the sort keyvoid
setSortKey
(String[] sortKeys) Sets the sort key
-
Constructor Details
-
DBVirtualList
public DBVirtualList()
-
-
Method Details
-
setPageSize
public void setPageSize(int size) Sets the paging size of this virtual list. The page size here is just a buffer size. A buffer is kept around that is three times as large as the number of visible entries. That way, you can scroll up/down several items(up to a page-full) without refetching entries from the directory.- Parameters:
size
- the page size
-
setSortKey
Sets the sort key- Parameters:
sortKey
- the attribute to sort by- Throws:
EBaseException
- failed to set
-
setSortKey
Sets the sort key- Parameters:
sortKeys
- the attributes to sort by- Throws:
EBaseException
- failed to set
-
getSize
public int getSize()Retrieves the size of this virtual list. Recommend to call getSize() before getElementAt() or getElements() since you'd better check if the index is out of bound first.- Returns:
- current size in list
-
getSizeBeforeJumpTo
public int getSizeBeforeJumpTo()Returns current index.- Returns:
- current index
-
getSizeAfterJumpTo
public int getSizeAfterJumpTo() -
getCurrentIndex
public int getCurrentIndex() -
getPage
public boolean getPage(int first) Get a page starting at "first" (although we may also fetch some preceding entries) Recommend to call getSize() before getElementAt() or getElements() since you'd better check if the index is out of bound first.- Parameters:
first
- the index of the first entry of the page you want to fetch
-
getPage
Called by application to scroll the list with initial letters. Consider text to be an initial substring of the attribute of the primary sorting key(the first one specified in the sort key array) of an entry. If no entries match, the one just before(or after, if none before) will be returned as mSelectedIndex- Parameters:
text
- the prefix of the first entry of the page you want to fetch
-
getElementAt
Fetchs data of a single list item Recommend to call getSize() before getElementAt() or getElements() since you'd better check if the index is out of bound first. If the index is out of range of the virtual list, an exception will be thrown and return null- Parameters:
index
- the index of the element to fetch
-
getJumpToElementAt
Retrieves and jumps to element in the given position.- Parameters:
i
- position- Returns:
- object
-
processElements
Processes elements as soon as it arrives. It is more memory-efficient.- Parameters:
startidx
- starting indexendidx
- ending indexep
- object to call- Throws:
EBaseException
- failed to process elements
-
getSelectedIndex
public int getSelectedIndex()Gets the virutal selected index- Returns:
- selected index
-
getFirstIndex
public int getFirstIndex()Gets the top of the buffer- Returns:
- first index
-