Java clients generated using the OpenAPI specification for the Unblu collaboration server.
URLs
-
Project home (this page)
| Do you want to improve this page? Please edit it on GitHub. |
Description
The OpenAPI specification which leads the generation of the source file can be found at the root of the repository: openapi.yaml
Models v4
This project contains java classes corresponding to the JSON Schemas used as request body or response body in the Web-API’s endpoints and as body of the Webhook events.
The model library can be used with different clients such as the Jersey 3.x.x client v4
<dependency>
<groupId>com.unblu.openapi</groupId>
<artifactId>models-v4</artifactId>
<version>8.26.2</version>
</dependency>
com.unblu.openapi:models-v4:8.26.2
Jersey Client v4
This project contains a client to perform HTTP request against the Web-API of the collaboration server.
This is based on the jersey project, version 3.x.x.
It requires the model v4 library
It requires Java 11 to run.
It is compatible with Spring 6 / Spring Boot 3 / Quarkus 3.
<dependency>
<groupId>com.unblu.openapi</groupId>
<artifactId>jersey3-client-v4</artifactId>
<version>8.26.2</version>
</dependency>
com.unblu.openapi:jersey3-client-v4:8.26.2
Build
This project is using gradle.
Command to build the sources locally:
./gradlew build
Command to deploy to your local maven repository:
./gradlew publishToMavenLocal
Command to build the documentation page:
./gradlew asciidoctor
The output of this command is an HTML page located at <git repo root>/build/docs/html5/index.html.
For project maintainers
Publication to maven central is using jreleaser, following properties are expected to be set (for example in ~/.jreleaser/config.toml or as environment variables):
-
JRELEASER_MAVENCENTRAL_USERNAME -
JRELEASER_MAVENCENTRAL_PASSWORD -
JRELEASER_GPG_PASSPHRASE -
JRELEASER_GPG_PUBLIC_KEY -
JRELEASER_GPG_SECRET_KEY -
JRELEASER_GITHUB_TOKEN
Following command can be used to verify that jreleaser is correctly configured:
./gradlew jreleaserConfig
Command to build and publish the result to maven central:
./gradlew publish ./gradlew jreleaserDeploy
Command to perform a release:
./gradlew release -Prelease.useAutomaticVersion=true
Using ssh-agent
Some tasks requires to push into the distant git repository (release task or updating the gh-pages branch).
If they are failing with errors like this:
org.eclipse.jgit.api.errors.TransportException: ... Permission denied (publickey).
Then ssh-agent can be used.
eval `ssh-agent -s` ssh-add ~/.ssh/id_rsa
(source for this approach)
Get in touch
Use the Unblu OpenAPI issue tracker on GitHub.