About this release

The 2022.1 release focuses on the integration of LuciadFusion within your projects. We extended the LuciadFusion API on three fronts: notifications about events via the Java API, integration of your business-specific metadata, and integration of your authentication solution. In addition, LuciadFusion now supports serving data stored in S3. This document provides a comprehensive overview of these features and some other improvements.

luciad portfolio
Figure 1. The Luciad portfolio.

Benefits of the new features

Get insights into the user activity via the new events mechanism

LuciadFusion Studio not only provides a GUI through which users can interact with the platform, but also offers a Java and a REST API for developers to programmatically manage data, define products, add, start, and stop services. In this release, LuciadFusion introduces a new Java events API. This API allows you as a developer to get notifications about several types of events that are happening within the LuciadFusion instance.

You can now request notifications for the following types of events:

  • Create, read, update, and delete (CRUD) operations on data, products, styles, and services

  • Jobs are started/stopped

  • Services are accessed

  • Configuration of data roots

The new API is based on the Spring events mechanism.

event JavaAPI
Figure 2. Java API listing the events that you can listen to.

Sample code to get you started

Because we’re using Spring to publish events in LuciadFusion, it’s easy to listen to these events by using a Spring annotation called @EventListener. For a demonstration, see this example:

Sample that demonstrates how to listen to events
@Component
public class EventHandling {

  @EventListener
  public void handleEvent(TLfnProductCreatedEvent aEvent) {
    System.out.println("A new Product has been created: " + aEvent.getProduct());
  }

}

We added a new article Listening for LuciadFusion events. It summarizes the new API and provides code snippets to get you started. The article Add a custom service type was also extended to reflect the new capability.

Integrate your business-specific metadata

The LuciadFusion built-in catalog service relies on the ISO 19115 metadata standard. Based on your project, you may need business-specific metadata models.

The LuciadFusion API now supports other metadata models. You can add them and register them with the LuciadFusion platform. Once the metadata models have been added and registered, LuciadFusion monitors all metadata, including the files with the new formats. When the metadata files have been updated, LuciadFusion crawls the directory again and refreshes the metadata.

You can now query your data, based on the custom metadata, using the REST API. Queries are written in RSQL and can reference the attributes present in your metadata. These attributes can be the previously existing standard properties such as title, abstract or keywords, but also any element from your newly defined metadata models as described above. In the screenshot below, you can see how to use an RSQL query in the REST API to filter data.

488
Figure 3. Query data by using RSQL.

Articles to get you started

Custom authentication

LuciadFusion offers built-in security configuration options, including some authentication settings and managers. The pre-defined authentication managers support user authentication against an Active Directory server, user authentication against an LDAP server, and a fallback option for defining users within the LuciadFusion configuration file. That last option is not recommended in a production environment. This release of LuciadFusion facilitates the integration of your own authentication system.

LuciadFusion is a Spring-based application, so you can use the Spring framework to extend the existing capabilities of the LuciadFusion server. You can now use Spring to integrate a custom authentication logic overriding the built-in default LuciadFusion Platform security layer.

Sample code to get you started

The package samples.fusion.platform.security illustrates how custom authentication can be performed using user credentials stored in a database. We also added the article How to plug in your custom user authentication logic.

Configure LuciadFusion in the cloud and serve data from Amazon S3

This release extends LuciadFusion with the capability to serve data stored on Amazon Simple Storage Service (Amazon S3). Amazon S3 is an object storage service that offers scalability, data availability, security, and performance.

The API added in version 2022.1 allows you to connect to S3 buckets, and write your own implementation for other cloud storage solutions.

Sample code to get you started

We added some articles to guide you through the use of LuciadFusion on a cloud platform. See LuciadFusion on AWS and Decoding data from AWS S3. All information is conveniently grouped in LuciadFusion Platform: Cloud integration.

Improvements for customers in the aviation domain

For the 2022.1 release, we enhanced LuciadFusion with a set of improvements that are particularly useful for our customers within the aviation domain. These enhancements are bundled in this section.

Extension of Asterix support

LuciadFusion has supported the All-purpose structured EUROCONTROL surveillance information exchange (ASTERIX) format for many years. As an illustration of our continued support for this standard, we upgraded our support for Asterix Category 48 to version 1.21.

Extension of ARINC support

Following our extension of the DAFIFT aviation format for Minimum Sector Altitude features in LuciadFusion version 2022.0, we now also support this feature in our ARINC decoder. This data defines the lowest altitude that provides a minimum clearance of 1000 feet above all objects located within a circle sector (for example, around a navigational aid).

Other improvements

Canadian Geodetic Vertical Datum of 2013 (CGVD2013) support

For quite some time, LuciadFusion has supported the Canadian Geodetic Vertical Datum 1928 (CGVD 28). We have now extended this support with the Canadian Geodetic Vertical Datum of 2013 (CGVD2013).

ECW SDK 6.0 support

LuciadFusion uses the ECW SDK to add support for the efficient ECW image format. As of this release, LuciadFusion integrates the latest ECW SDK v6.0. This upgrade ensures that, as a Hexagon product, LuciadFusion uses the latest features and optimizations available, offering optimal ECW handling within the product.

Customize WMTS layer styling

You can now programmatically customize the styling of WMTS layers. To enable this, we introduced a new service ILcdWMTSGXYLayerFactory, plugging into the LuciadFusion platform. Like its existing WMS counterpart, it gives you access to the WMTS request parameters, which you can use to determine the styling of the data.