Extendibility

This section explains the extendibility feature, which helps banks to extend product services for customizing features as per their requirements.

Extension Data Entity Model

The extension data is stored as name-value pair as a part of entity. The extension data is provided as another column in the entity collection or table.

Column Name

DataType

Description

extensionData

map<text,text>

extension Data placeholder to store the data as name-value pair

Extension Data Support in API

Arrangement microservice supports retrieval and storage of extension data along with the product data. The payload of all the APIs has extensionData JSON node to support retrieval and persistence of data into the extension column as name-value pairs along with the product data.

  • POST or PUT APIs support to create or update extension data.
  • GET APIs, by default, are extended to retrieve extension data along with the product data.

Extension Data in Design Time

extensionData JSON node is added to all the input and output schema where the extension is allowed (shown in the following swagger).

extensionData:
  type: object

@ElementCollection is used for the extensionData in entity.

@ElementCollection
@MapKeyColumn(name = "name")
@Column(name = "value", length = 4000)
@CollectionTable(name = "ArrangementExtension", joinColumns = @JoinColumn(name = "Arrangement_arrangementId"))
Map<String, String> extensionData = new HashMap<String, String>();

Extension Data in Runtime

Sample extension data for GET APIs is shown below.


Bookmark Name Actions
Feedback
x