An open source SDK that allows you to easily build plugins and services that integrate with Flows running on the ManyWho platform.
The SDK is currently available from the Maven Snapshots repository and is automatically published there on each commit, so it's easy to integrate with your Java application:
<repositories>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-services</artifactId>
<version>2.0.0-SNAPSHOT</version>
</dependency>
</dependencies>
Some initial basic information on how to build a plugin that integrates with ManyWho using this SDK is available here.
WARNING: These modules are in flux, and the object structures/names/classes might change at any time!
This module contains the ManyWho API objects, spanning across our Draw, Run and Translate APIs. Our APIs aren't 100% covered (yet!) but the most commonly used objects are available. If there are objects missing that you need in your application, feel free to open an issue or submit a pull request and we'll include them as soon as possible.
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-api</artifactId>
<version>${version.manywho.sdk}</version>
</dependency>
This module supplies some clients that help you integrate with the various ManyWho APIs. It currently supports parts of the Run API and is actively being improved to cover the other APIs.
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-client</artifactId>
<version>${version.manywho.sdk}</version>
</dependency>
This module is an example Service written using the SDK. It is meant to be used as a reference for building other services, and should contain examples of each major aspect of the SDK (e.g. Identity, Files, Social, etc.).
This module enables support for running services using a Servlet 3 compatible container (e.g. Tomcat) and
includes the sdk-services
module as a dependency.
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-server-servlet3</artifactId>
<version>${version.manywho.sdk}</version>
</dependency>
This module is probably what you want - it enables support for running services using the high-performance, embedded Undertow server and
includes the sdk-services
module as a dependency.
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-server-undertow</artifactId>
<version>${version.manywho.sdk}</version>
</dependency>
This module includes the vast majority of the SDK's functionality for building services. Basic documentation for using it is being actively written here, but if there is anything missing feel free to open an issue or submit a pull request and we'll update them as soon as possible.
<dependency>
<groupId>com.manywho.sdk</groupId>
<artifactId>sdk-services</artifactId>
<version>${version.manywho.sdk}</version>
</dependency>
Contributions are welcome to the project - whether they are feature requests, improvements or bug fixes! Refer to CONTRIBUTING.md for our contribution requirements.
This SDK is released under the MIT License.