Class: DeferredDataProvider

Oracle® JavaScript Extension Toolkit (JET)
4.2.0

E91398-01

QuickNav

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

oj. DeferredDataProvider

Version:
  • 4.2.0
This class implements oj.DataProvider. This object represents a data provider that is created with deferred data and can be used by any component that requires a data provider that will be created with data from a Promise, such as oj.ojChart

Constructor

new DeferredDataProvider(dataProvider, capabilityFunc)

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 Promise.<oj.DataProvider> A promise that resolves to an oj.DataProvider
capabilityFunc Function An function that implements oj.DataProvider#getCapability.
Example
// DeferredDataProvider is used in cases where the data for the data provider will be
// provided asynchronously. In the example below, let getDeferredData() be any function
// that returns a Promise that will resolve to the final data.
var deferredDataPromise = getDeferredData();

// Create a Promise that will resolve to a data provider containing the resolved data
var dataProviderPromise = deferredDataPromise.then(function(resolvedData){
 return new oj.ArrayDataProvider(resolvedData);
});

// Then create a DeferredDataProvider object with the promise that will resolve to a data provider,
// and an implemenation of oj.DataProvider#getCapability
var dataprovider = new oj.DeferredDataProvider(dataProviderPromise, capabilityFunc);

Methods

addEventListener(eventType, listener)

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
eventType string The event type to add listener to.
listener EventListener The event listener to add.

containsKeys(params) → {Promise.<oj.ContainsKeysResults>}

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 there are rows containing the specified keys
Parameters:
Name Type Description
params oj.FetchByKeysParameters Fetch by keys parameters
Returns:
Promise which resolves to oj.ContainsKeysResults
Type
Promise.<oj.ContainsKeysResults>

dispatchEvent(evt) → {boolean}

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
evt Event The event to dispatch.
Returns:
false if the deferred data provider has not resolved or the event has been cancelled, and true otherwise.
Type
boolean

fetchByKeys(params) → {Promise.<oj.FetchByKeysResults>}

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 keys
Parameters:
Name Type Description
params oj.FetchByKeysParameters Fetch by keys parameters
Returns:
Promise which resolves to oj.FetchByKeysResults
Type
Promise.<oj.FetchByKeysResults>

fetchByOffset(params) → {Promise.<oj.FetchByOffsetResults>}

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
Parameters:
Name Type Description
params oj.FetchByOffsetParameters Fetch by offset parameters
Returns:
Promise which resolves to oj.FetchByOffsetResults
Type
Promise.<oj.FetchByOffsetResults>

fetchFirst(params) → {AsyncIterable.<oj.FetchListResult>}

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

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

getCapability(capabilityName) → {Object}

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

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

getTotalSize() → {Promise.<number>}

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

Return the total number of rows in this dataprovider
Returns:
Returns a Promise which resolves to the total number of rows. -1 is unknown row count.
Type
Promise.<number>

isEmpty() → {string}

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

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 it has resolved, and a fetch is made.
Type
string

removeEventListener(eventType, listener)

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
eventType string The event type to remove listener from.
listener EventListener The event listener to remove.