JavaScript Extension Development API for Oracle Visual Builder Cloud Service - Classic Applications

Class: bop.dt/js/spi/BOPExtensionManager

SPI object extending generic ExtensionManager and providing more detailed capability which can be used for implemeting BOP extensions.

Version:
  • 17.1.1
Source:
See:

Extends

  • extension.dt/js/spi/ExtensionManager

Methods

getCustomParameters() → {Promise.<Array.<extensions.dt/js/api/CustomParameter>>}

stable API

Gets an array of CustomParameters.

Should be used if the related BOP needs some parameter values for its initialization. All parameters defined here will show up in the first step of the Wizard opened when ABCS Business User is registering instance of BOP. That allows client to pass proper values before the BOP is initialized.

By default empty array is returned which signs that no CustomParameters are needed for initialization.

Version:
  • 17.1.1
Source:
See:
Returns:
Type
Promise.<Array.<extensions.dt/js/api/CustomParameter>>
Example

Example of typical implementation of custom BOPExtensionManager with a two CustomParameters included. One of them is simple key-value pair and the other has value set from predefined enumeration values.

define([
    'extensions.dt/js/api/CustomParameter'
], function (
    CustomParameter
) {

    var CustomBOPExtension = function () {
    };

    CustomBOPExtension.prototype.getCustomParameters = function () {
        return [
            CustomParameter.createSimple('SourceURL', 'String value poiting to the source URL of this BOP'),
            CustomParameter.createEnum({
                key: 'environment',
                displayName: 'Choose type of the environment you want to work with',
                values: [
                    'Development',
                    'Testing',
                    'Production'
                ]
             })
        ];
    };

    return new CustomBOPExtension();
});

Type Definitions

BOPExtensionDependencyFormat

stable API

Defines the format of the dependency to an ABCS BOP extension. This dependency should be added to the array of ExtensionManager.Dependency objects that is passed to the ExtensionManager.initialise and ExtensionManager.destroy methods.

Properties:
Name Type Description
businessObjects string

Contains an array of dependencies descriptions of the BOP extension.

Version:
  • 17.1.1
Source:
Example

An example of a dependency to a BOP extension

{
 "businessObjects": [
    {
        "my.BO": ["id","name","address"],    // selected properties from BO entity, "my.BO" is the BO's id
        "my.other.BO": "*"                   // all properties
    }
 ]
}
or
{
 "businessObjects": "*"                      // all business objects and properties
}
or ommit the dependency definition completely
{
                                             // all business objects and properties
}