Apache Camel - advanced
Automatic import
Automatic import
Apache Camel integrations are defined within your application's jvm/-script-config/{app-name}-camel.kts file.
System definitions
Reading from an SFTP server
The Genesis low-code platform supports the use of Apache Camel in order to integrate with external systems, using its plethora of components.
To create integration tests for your Apache Camel routes, you need to create service tests by extending the AbstractGenesisTestSupport class and specifying the relevant application-name-camel.kts file as the scriptFileName.
Request context
To create custom endpoints, you need to define a gpal file with the name web-handler.kts.
Gpal custom endpoints require no configuration beyond the web-handler.kts file. No modifications to the processes.xml file are required. Files will be picked up automatically by the Genesis Router from /script folders.
The example below is a collection of custom endpoints supporting SAML authentication. The LoginPostEndPoint, LoginUrlRequestEndPoint, LogoutEndPoint, and MetadataEndPoint all extend this AbstractSamlEndPoint.
The resources you create via the Request Server, Data Server and Event Handler are exposed to the front end as a series of REST endpoints.
Integration testing
Enriching data from the Genesis database
Where to define
Configure processes.xml file
Here is a full example of ingesting trades:
Genesis Data Pipelines enables you to stream data into or out of your Genesis application.
To test a data pipeline you need:
The generateSQLToRDB script
Configuration
GenesisToDb must be configured in your application-processes.xml file. The following is an example of how to do this:
Oracle Sample
The GenesisToDb module enables you to stream data from the Genesis low-code platform to classic RDBMS databases, such as Oracle or MSSQL.
You can not programmatically test integrations configured using the GenesisToDb module. However,
The following Excel functions are currently supported by ExcelToGenesis.
The Genesis low-code platform enables you to convert existing Excel spreadsheets into Genesis data models.
While the standard architecture of the FIX gateway is more than sufficient for most use cases, it is not ideal for more demanding architectures.
Streamer
The FIX Xlator is a plugin for the Streamer and Streamer client, which enables type-safe handling of FIX messages. It also gives access to a set of vital integration features, such as FIXIN, EXECUTIONREPORT and CUSTOM_FIX.
If your application needs to integrate with external systems through a FIX gateway, you need to be able to interpret incoming messages in the format of the external system and you need to be able to reformat information from the Genesis database when you send messages out to that system.
This page shows you how to create a Streamer.
This page shows you how to create a Streamer Client. It also looks at the syntax of the two types of Streamer Client that are available:
Database and service tests
This page gives details of the configuration requirements common to adaptors for all vendors.
Installation
The Genesis Notify module enables you to configure an application to send and receive messages to and from various messaging services.
Email configuration
The Genesis low-code platform provides a mechanism for creating pop-up toast notifications on screen in app. Any notifications sent to the Genesis Screen will be sent as a toast pop-up notification either on a company-wide or profile basis.
Microsoft Teams provides a mechanism for exposing its channels to a remote system via webhooks. A webhook url can be created as described here
Symphony is a secure instant messaging service focused on financial companies.
Authentication
Authentication
There are two important files in your application that contain configuration information:
The Genesis low-code platform automatically exposes all the resources you have configured as REST endpoints via the Genesis Router. Unless configured otherwise, all requests require a valid SESSIONAUTHTOKEN HTTP header. A SESSIONAUTHTOKEN is retrieved after successful user authentication.
The REST Endpoints created by the Genesis low-code platform reflect your application's business logic. These endpoints can be configured through the Genesis Router.