Final Class: PagingDataProviderView

Oracle® JavaScript Extension Toolkit (JET)
8.0.0

F18189-01

Signature:

final class PagingDataProviderView<K, D> implements DataProvider<K, D>, PagingModel

QuickNav


PagingDataProviderView

Version:
  • 8.0.0
Module:
  • ojpagingdataproviderview

Module usage

See JET Module Loading for an overview of module usage within JET.

Javascript Import Format
define(['ojs/ojpagingdataproviderview'], function(PagingDataProviderView) {
 // Application should call API on PagingDataProviderView 
})
Typescript Import Format
//This class is exported directly as module. To import it
import PagingDataProviderView= require("ojs/ojpagingdataproviderview");

JET In Typescript

A detailed description of working with JET elements and classes in your typescript project can be found at: JET Typescript Usage.

Final classes in JET

Classes in JET are generally final and do not support subclassing. At the moment, final is not enforced. However, this will likely change in an upcoming JET release.

Description

This class implements oj.DataProvider. Wraps a oj.DataProvider to be used with PagingControl. Supports PagingModel API.

Constructor

new PagingDataProviderView(dataProvider)

Parameters:
Name Type Description
dataProvider DataProvider<K, D> the oj.DataProvider to be wrapped.

This can be either any DataProvider or a wrapped DataSource with a TableDataSourceAdapter. Paging DataProvider View does not handle DataProviders with unknown total sizes.

Methods

addEventListener(eventType: string, listener: EventListener): void

Add a callback function to listen for a specific event type.
Parameters:
Name Type Description
eventType string The event type to listen for.
listener EventListener The callback function that receives the event notification.

containsKeys(params: FetchByKeysParameters<K>): Promise<ContainsKeysResults<K>>

Check if rows are contained by keys (default: local dataset) FetchByKeysParameter scope may be set to "global" to check in global dataset
Parameters:
Name Type Description
params oj.FetchByKeysParameters Fetch by keys parameters
Returns:
Promise which resolves to oj.ContainsKeysResults
Type
Promise.<oj.ContainsKeysResults>

dispatchEvent(evt: Event): boolean

Dispatch an event and invoke any registered listeners.
Parameters:
Name Type Description
event Event The event object to dispatch.
Returns:
Return false if a registered listener has cancelled the event. Return true otherwise.
Type
boolean

fetchByKeys(params: FetchByKeysParameters<K>): Promise<FetchByKeysResults<K, D>>

Fetch rows by keys (default: local dataset) FetchByKeysParameter scope may be set to "global" to fetch in global dataset
Parameters:
Name Type Description
params oj.FetchByKeysParameters Fetch by keys parameters
Returns:
Promise which resolves to oj.FetchByKeysResults
Type
Promise.<oj.FetchByKeysResults>

fetchByOffset(params: FetchByOffsetParameters<D>): Promise<FetchByOffsetResults<K, D>>

Fetch rows by offset within context of the current page data.
Parameters:
Name Type Description
params oj.FetchByOffsetParameters Fetch by offset parameters
Returns:
Promise which resolves to oj.FetchByOffsetResults
Type
Promise.<oj.FetchByOffsetResults>

fetchFirst(params?: FetchListParameters<D>): AsyncIterable<FetchListResult<K, D>>

Fetch the first block of data. Limited to scope of the current page data.
Parameters:
Name Type Argument Description
params oj.FetchListParameters <optional>
Fetch parameters
See:
Returns:
AsyncIterable with oj.FetchListResult
Type
AsyncIterable.<oj.FetchListResult>

getCapability(capabilityName?: string): any

Determines whether this DataProvider supports certain feature.
Parameters:
Name Type Description
capabilityName string capability name. Supported capability names are: "fetchByKeys", "fetchByOffset", and "sort".
Returns:
capability information or null if unsupported
Type
Object

getEndItemIndex() : {number}

Get the current page end index
Returns:
The current page end index
Type
number

getGlobalIndex(value) : {number}

Translates and returns the global index given a local index.
Parameters:
Name Type Description
value number The local index to be translated
Returns:
The translated global index
Type
number

getPage() : {number}

Get the current page
Returns:
The current page
Type
number

getPageCount() : {number}

Get the page count
Returns:
The total number of pages
Type
number

getStartItemIndex() : {number}

Get the current page start index
Returns:
The current page start index
Type
number

getTotalSize() : {Promise.<number>}

Gets the total size of the current page data set
Returns:
Returns a Promise which resolves to the total number of rows.
Type
Promise.<number>

isEmpty() : {"yes"|"no"|"unknown"}

Return a string that indicates if this data provider is empty
Returns:
a string that indicates if this data provider is empty. Valid values are: "yes": this data provider is empty. "no": this data provider is not empty. "unknown": it is not known if this data provider is empty until a fetch is made.
Type
"yes" | "no" | "unknown"

removeEventListener(eventType: string, listener: EventListener): void

Remove a listener previously registered with addEventListener.
Parameters:
Name Type Description
eventType string The event type that the listener was registered for.
listener EventListener The callback function that was registered.

setPage(value, options) : {Promise}

Set the current page. This will trigger a refresh event. During initialization the refresh event is skipped.
Parameters:
Name Type Argument Description
value number The current page
options Object <optional>
Options

pageSize: The page size.

Returns:
promise object triggering done when complete..
Type
Promise

totalSize() : {number}

Returns:
total number of items
Type
number

totalSizeConfidence() : {string}

Returns the confidence for the totalSize value.
Returns:
"actual" if the totalSize is the time of the fetch is an exact number "estimate" if the totalSize is an estimate "atLeast" if the totalSize is at least a certain number "unknown" if the totalSize is unknown
Type
string