Overview | Package | Class | Tree | Deprecated | Index | Help
| Copyright © 2008 BEA Systems, Inc. All Rights Reserved
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.content.paging
Interface IPagedList<T>

All Superinterfaces
  ContentListKeys, Iterable<T>, Serializable

All Known Subinterfaces:
  IFilterablePagedList<T>, ISortableFilterablePagedList<T>, ISortablePagedList<T>

    public interface IPagedList<T>

extends Iterable<T>, Serializable, ContentListKeys

An IPagedList represents a collection of query results. It is similar to a java.util.List, except the list itself cannot be modified. Modifications should be made via the content Federated APIs (NodeManager, TypeManager, etc).

An overview of PagedList capabilities, including sorting and filtering, is provided in the package documentation at `com.bea.content.paging`

An IPagedList implementation may load some or all of its items on-demand. If this is supported, the number of items to load at a time may be configured via the `ContentListKeys.BATCH_LOADING_SIZE_KEY` context key and the getBatchLoadingSize() and setBatchLoadingSize() methods.

This interface is intended to be implemented only by BEA Weblogic Portal. BEA Systems reserves the right to add abstract methods to this interface without notice. Implementations of this interface by other parties must not be expected to compile without change in future versions of BEA Weblogic Portal.

Field Summary

Fields inherited from interface com.bea.content.paging.ContentListKeys
`ALL_ITEMS, BATCH_LOADING_SIZE_KEY, CUSTOM_OBJECT_FILTER, CUSTOM_OBJECT_SORT, FILTER_CRITERIA_KEY, SORT_CRITERIA_KEY`

Method Summary
`int` | `fullSize()` Finds query results size, regardless of the cost.
`int` | `getBatchLoadingSize()` Returns the current batch loading size.
`boolean` | `isFullyResolved()` For performance reasons, query results can be bounded at a maximum, such as 10,000 items.
`IPagedListIterator<T>` | `iterator()` Get an iterator to traverse the PagedList items.
`int` | `nativeSize()` If it is possible to efficiently determine the query results size, this method will return the size.
`void` | `setBatchLoadingSize(int numItems)` Updates the batch loading size

Method Detail

### iterator

    IPagedListIterator<T> iterator()
                                   throws RepositoryRuntimeException

  Get an iterator to traverse the PagedList items. It is always safe to retrieve an iterator, even if the PagedList is empty (no query results). If there are no query results, calling iterator.hasNext() will return false.

  NOTE: any changes to the PagedList (such as resorting, refiltering, etc) will invalidate all iterators on the PagedList.

  Specified by:
    `iterator` in interface `Iterable<T>`
  Throws
    `RepositoryRuntimeException`

### isFullyResolved

    boolean isFullyResolved()
                            throws RepositoryRuntimeException

  For performance reasons, query results can be bounded at a maximum, such as 10,000 items. This method can be used to determine if this PagedList represents all items meeting the criteria, or a subset. (same meaning as in com.bea.p13n.pagination.PagedResult)

  Throws
    `RepositoryRuntimeException`

### fullSize

    int fullSize()
                 throws RepositoryRuntimeException

  Finds query results size, regardless of the cost.

  NOTE: this method is potentially very expensive, as expensive as accessing every item, since in many cases, the query results size cannot be determined efficiently. For this reason, it is generally preferable to call nativeSize() instead.

  If you need to iterate over all results, it will be most efficient to skip a call to fullSize(), and use an iterator like this:

           IPagedList allNodes= ...
           for ( Node node : allNodes ) {
              // use 'node' object
           }

  Throws
    `RepositoryRuntimeException`

### nativeSize

    int nativeSize()
                   throws RepositoryRuntimeException

  If it is possible to efficiently determine the query results size, this method will return the size. If the size cannot be determined natively, returns com.bea.p13n.pagination.PagedResult.COUNT_UNKNOWN

  Throws
    `RepositoryRuntimeException`

### getBatchLoadingSize

    int getBatchLoadingSize()
                            throws RepositoryRuntimeException

  Returns the current batch loading size. The batch loading size specifies how many items are loaded at a time from the backing store when items are retrieved.

  Throws
    `RepositoryRuntimeException`

### setBatchLoadingSize

    void setBatchLoadingSize(int numItems)
                             throws RepositoryRuntimeException

  Updates the batch loading size

  Throws
    `RepositoryRuntimeException`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008 BEA Systems, Inc. All Rights Reserved