Overview

Primarily, there are three types of extensions: Anonymous, Feature Specific and Named.

  1. The Anonymous extensions allow for invocation of custom logic using pre-defined methodologies.
  2. The Feature Specific extensions allow for extending specific OIPA features.
  3. The Named extensions allow for custom logic at pre-defined points through the lifecycle of specific system events. Named extensions allow for fine-tuned customization.

Anonymous Extensions

Anonymous extensions are provided with data from running transactions, making them powerful tools for integration. Anonymous extensions can execute when an activity is run or when the FileReceived web service is invoked. In the example below, the policy lifecycle includes the OIPA transactions Premium Receipt, Issue and Billing. The first two transactions illustrate how the system can perform messaging over an enterprise service bus (ESB). The last transaction, Billing, illustrates MQ series integration.

Example of Policy Life cycle

Feature Specific Extensions

Feature Specific extensions provide the ability to enhance a specific OIPA feature. There is only one Feature Specific extension at this time called External Client Integration which can be used to enhance OIPA's client and role management feature to interact with an external agent database.

Named Extensions

When fine-tuned control over the application's lifecycle is required, Named extensions can be employed. Named extensions are provided through the Extensibility Framework, which is discussed later in this document.

Below is a simplified rules engine processing example that illustrates how Named extensions can provide pre- or post-processing, or can replace a processing step altogether.

  • Default implementation

     Default implementation

  • Pre-processing added via an extension

    Pre-processing named extension

  • Post-processing added via an extension

    Post-processing named extension

  • Math processing lifecycle step is replaced with custom math via an extension

    Math processing Named Extension