OpenLegacy Product Overview

OpenLegacy is an API integration and API management software platform that accelerates the delivery of your core applications as new digital services.
OpenLegacy specializes in building digital services (APIs) for legacy applications, decoupling monolithic applications into microservices, and providing API management solutions for the run-time environment.

The OpenLegacy product is, at its core, an Integrated Development Environment (OpenLegacy IDE) that builds integration projects and microservice projects using the OpenLegacy Framework.
The OpenLegacy Framework is a Java-based framework that utilizes Java industry standards and OpenLegacy's proprietary set of connectors to enable rapid integration to legacy systems for the creation of digital services (APIs).
While the OpenLegacy Framework enables developers to build standard integration projects and microservices, the OpenLegacy IDE is packed with a full set of smart tools to automatically generate integration projects, APIs and the microservices with it.

OpenLegacy IDE

The acceleration in delivering new digital services by integrating with core applications and decoupling it, is all possible thanks to the OpenLegacy IDE and its tools.

The smart tools provided by the IDE analyze and parse the core systems, and generate automatically modern APIs for selected assets of the backend.
The generated product of these smart tools are OpenLegacy projects which are standard Java projects utilizing the OpenLegacy framework and run time features.

OpenLegacy Project

The generated products of the OpenLegacy IDE are OpenLegacy projects.

These projects are ready for deployment to container technologies such as Docker and Cloud Foundry, to Cloud Hosting solutions such as AWS, Azure, etc., and to any standard Linux/Windows servers.
The automatically generated project comes out of the box with a set of run time features.

Connectors

OpenLegacy offers built-in connectors for the most common legacy back-ends, such as Mainframes, AS/400 and more. Custom connectors can also be provided as needed for other legacy systems.

As connectors are modular and often come from 3rd party vendors or projects, adding additional or custom connectors is quite easy. Supporting a new kind of connector may be as easy as adding it as a dependency to the Java project while writing some glue code for the integration project to recognize and use it. In more complex cases, an analyzer needs to be created to support the connector and create an appropriate model. Although this requires additional effort to do, it is still quite simple due to the modular nature of analyzers.

Security

All OpenLegacy APIs are configured to be secured out of the box.
The Security specification defines the authentication and authorization of both users and applications using the API.

With OpenLegacy, it is possible to choose from various options regarding the source of the users, and clients, OpenLegacy support in memory, database, LDAP, Active Directory and even authentication with the legacy backend. 

Caching

Caching can improve API performance when some of the data is not frequently updated. Caching can also minimize network loads by limiting calls to the backend, and thus reduce overall costs by reducing MIPS.

The Caching option is defined on the Project level, i.e., enable caching or do not enable. However, if you choose to enable caching, you will be able to define which data to cache and which data should be retrieved (or written) to the legacy backend.

You can select the Caching Engine to be used through the dropdown. The OpenLegacy application provides default caching engines, but you can use any engine by defining and configuring it outside the OpenLegacy application.

One of the biggest advantages of OpenLegacy in relation to caching, is the ability to apply deep caching. This means providing caching for both the API layer and the underlying SDK components constructing it.
So while, for the sake of the example, an API response can’t be cached, as it responds with a dynamic response every time that must be accurate, ‘under the hood’, it uses SDK methods that retrieve repeating answers; these specific SDK responses can be cached individually.

Another significant advantage of the OpenLegacy platform in this area, is the ability to control the entire cache, and modify it in a running environment. This means that optimizations to the system can be applied live on the system, while receiving immediate feedback about performance.

Microservices Ecosystem

The Microservices architecture is a service‑oriented architecture composed of loosely coupled elements that have bounded contexts.
Decoupling these elements from each other, allows each element to be scaled independently, and allows each element to be maintained separately, guaranteeing lower risk to the system as a whole.

One of the key features of OpenLegacy projects is the ability to orchestrate multiple core applications in a single project into a new API.
Multiple legacy systems can be orchestrated into a single project, or, alternatively, legacy systems can be connected and integrated with modern systems.  
The OpenLegacy integration process enables this transition by creating each API integrated with the monolith in a separate Java project. By default, the OpenLegacy Java Project template contains all the complex configurations needed to deploy each API project separately, communicate with the various microservices ecosystem components, scale out easily and behave essentially as a complete microservice.

Management Console

The OpenLegacy Management Console allow easy management of application APIs in a post-deployment environment.

Modifying and fine-tuning of properties for development, testing and production environments is easily accomplished without needing to restart the server.
The OpenLegacy applications can be easily updated with the click of a button.