utilihive sdk

Utilihive is designed to enable Greenbird’s partners and customers in the development of integration content and adapters. The Utilihive Software Development Kit (SDK) is used both by Greenbird’s own integration experts, as well as by certified partners and customers to develop adapters and data flows themselves.

Developers new to Utilihive will need to become familiar with the Utilihive Flow Developer SDK. This SDK provides the means to write and test flow configurations in a local environment. It includes all of the tools needed to see how a flow would realistically behave on a production server, from processing API endpoints to handling errors.

SDK laptop NEW

Kotlin DSL

Flow configurations for the SDK are implemented in Kotlin using a domain-specific language (DSL). This allows configurations to be written as a self-documenting data structure. Android developers might already be familiar with this concept, because Gradle files are also written using a DSL.

With the Utilihive SDK, a Kotlin-based configuration would look like the following example:

Screenshot 2022-11-15 at 12.47.28

SDK Components

Local Server

The SDK includes a standalone test server that runs in the background with temporary data persistence. This server is launched the first time it is needed (such as when a test is run) and will shut down after a certain period of inactivity. Flow configurations can be deployed to the server to test their output, though the server will not persist these flows long-term.

The test server works out of the box without any additional setup. However, server settings can be overridden as needed. For instance, if the flow you are developing is dependent on an SMTP email client, you can specify those credentials in the flow-server’s local files.                               

Testing Library

It is important that flows are automatically tested while being developed. Thus, the SDK includes a testing library that enables developers to write unit tests for their flows. The testing library is based on JUnit 5 with support for running concurrent tests.

The testing library will automatically start the local server and deploy flows on it. However, flows that are deployed during a test will be removed as soon as the test completes. The testing library also includes other helpful components like a log asserter and a preconfigured HTTP client to make requests to a flow’s endpoints. The responses from these endpoints can be validated with familiar assertion methods like assertThat().

dataflows laptop NEW

DATAFLOWS

Reusable integration applications or energy data flows. Customize and develop your own data flows with Utilihive SDK.

heartbeat

heartbeat

Pre-integrated big data log analyzer and DataOps tool for end-to-end monitoring of all data and data integration flows.

datalake

datalake

Distributed data lake architecture for secure storage and real-time data exchange between the OT/IT domains.

Get started by simplifying integration and automation

If you’re ready for the next step or you would like to explore our capabilities, please contact our sales team for:

Pricing information

Product demonstration

Partnership opportunities