/sidebar-sdk-java

Acrolinx Sidebar Java SDK

Primary LanguageJavaApache License 2.0Apache-2.0

Acrolinx Sidebar Java SDK

Maven Central Build Status Quality Gate Status

This is a library for integrating the Acrolinx Sidebar into different Java UI framework-based applications (JFX, Swing, and SWT).

You can use the Maven artifact com.acrolinx.client:sidebar-sdk to integrate Acrolinx in your Java application.

See: Build With Acrolinx

Live Demo

Acrolinx Sidebar Java Live Demo

The Acrolinx Sidebar

The Acrolinx Sidebar is designed to show up beside the window where you edit your content. You use it for checking, reviewing, and correcting your content. To get an impression what the Sidebar looks like in existing integrations, have a look at Sidebar Quick Start.

Prerequisites

Please contact Acrolinx SDK support for consulting and getting your integration certified. This sample works with a test license on an internal Acrolinx URL. This license is only meant for demonstration and developing purposes. Once you finished your integration, you'll have to get a license for your integration from Acrolinx.

Acrolinx offers different other SDKs, and examples for developing integrations.

Before you start developing your own integration, you might benefit from looking into:

Getting Started

Build the Project

  • Cone the project.
  • Run gradlew build to build the SDK locally.

Using the SDK

Note that, if you’re using Java version 11 or later you’ll need to provide the following modules JavaFX modules:

  • "javafx.web"
  • "javafx.swing"
  1. Just reference the Maven artifact com.acrolinx.client:sidebar-sdk that is available on Maven Central. Have a look at the build.gradle file if you use Gradle.
  2. Implement:
    • AcrolinxIntegrationInterface, and the
    • InputAdapterInterface.
    • The AcrolinxSidebarInitParameterBuilder helps you initialize the Acrolinx Sidebar.
  3. Check out the Sidebar SDK Java API Reference for more details.

Architecture and Interfaces

SDK Features

  1. Support for UI-frameworks:

    • JavaFX
    • Swing
    • SWT (For Windows WebView2 required for Sidebar version 15 or higher, other platforms will use default Browser)
  2. LookupRangesDiff - Provides lookup functionality.

  3. Start page: Provides an interactive way to sign in to Acrolinx with built-in error handling.

  4. Provides logging. Logging can be activated via:

    LoggingUtils.setupLogging("AcrolinxDemoClientJFX");
  5. Provides an AcrolinxStorage that can be used to persist Sidebar settings in the data store of the host editors. If not set, the SDK will default to the browsers LocalStorage.

  6. Provides MultiSidebar usage that can be used to create and manage multiple Sidebars. Every document can get its own Sidebar. Helping preserve Acrolinx results switching between documents.

  7. Provides Batch Checking functionality to check multiple documents with a single click.

SWT Dependency Resolution

If you want to use the SWT UI framework: The Maven property osgi.platform doesn't seem to be handled by Gradle. Instead, you'll have to do a bit of special dependency resolution to correctly grab the platform-specific dependencies. Create a variable SWT_VERSION specifying the desired version for example: SWT_VERSION=3.117.0

Using Sidebar v15 with SWT

Only for Windows OS based Integrations

If you choose to use Sidebar v15 with SWT, you additionally need to install the WebView2 Runtime on the user's system.

This is required as Sidebar v15 doesn't support Internet Explorer.

Follow the guidelines provided by Microsoft to install the WebView2 Runtime.

SDK Architecture

Java SDK Overview

Instructions for Contributing Code

References

License

Copyright 2016-present Acrolinx GmbH

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at:

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

For more information visit: https://www.acrolinx.com