Create Java API data sources

Create Java API data sources

Prerequisites

  • Java Development Kit (JDK) 11 or higher
  • A Java IDE such as IntelliJ IDEA, Eclipse or Visual Studio Code
  • Basic knowledge of Java programming
  • QuickHMI Editor version 12.1.1 (Jellyfish) or higher
  • QuickHMI Java Datasource API (qhmi_datasource_api_vX.jar)

You can find the API download in the following Github repository: https://github.com/IndiAnGmbH/QuickHMI-Java-Datasource-API


Introduction

With the QuickHMI Java API, you can develop your own drivers and interfaces to adapt QuickHMI to individual requirements. The only requirement is a basic understanding of the Java programming language.

QuickHMI provides you with the Java data source interface (qhmi_datasource_api.jar) for this purpose. You can download this library directly from our GitHub repository. There you will also find a sample implementation that you can use as a template for your own development.


Programming

1. establishment of the project

  • Set up a new Java project in any IDE (e.g. IntelliJ IDEA, Eclipse).
  • Integrate qhmi_datasource_api.jar into your project.

2. create class and implement API

  • Create a class that implements com.indian.quickhmi.server.api.IDataSource_VX.
  • Overwrite all necessary methods according to your requirements.

3. export of the .jar file

  • Export your project as a .jar file and save it in the QuickHMI directory runtime\java_api_datasources .

A complete description of all available classes, interfaces and methods can be found in the official API documentation.


Integration in the QuickHMI editor

1. add data source

  • Open the data source overview in the QuickHMI Editor and add a new data source.
  • Set the data source type to Java_API.

2. configuration of the data source

  • Name of the .jar file: Enter the name of your .jar file. Alternatively, you can open the file folder directly using the button next to the input field and select a file.
  • Fully qualified class name: Enter the full class name including package (e.g. com.example.MyCustomDataSource).
  • Address: Optional text that is passed as a parameter to the init method of your data source.