Class: PagingDataProviderView

Oracle® JavaScript Extension Toolkit (JET)
7.1.0

F18183-01

Signature:

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

QuickNav


PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

PagingDataProviderView

Version:
  • 7.1.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.

Description

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

Constructor

new PagingDataProviderView(dataProvider)

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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>>

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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>>

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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

PREVIEW: This is a preview API. Preview APIs are production quality, but can be changed on a major version without a deprecation path.

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