Vendor-neutral Java API contracts for multi-runtime application capabilities, plus partial client adapter modules for Capa, Dapr, and Layotto.
Capa Cloud · Documentation · Issues
- Java 8 or 11
- Maven 3.8.1 or later
Current repository and Maven artifact version: 1.19.RELEASE.
Maven:
<dependency>
<groupId>group.rxcloud</groupId>
<artifactId>cloud-runtimes-api</artifactId>
<version>1.19.RELEASE</version>
</dependency>Gradle:
implementation 'group.rxcloud:cloud-runtimes-api:1.19.RELEASE'cloud-runtimes-api defines contracts and shared types. It does not connect to a runtime by itself.
| Module | Purpose | Current boundary |
|---|---|---|
cloud-runtimes-api |
Core, enhanced, native-protocol, SaaS, client, and shared domain APIs | Compatibility-sensitive API definitions |
cloud-runtimes-capa |
Capa client/provider scaffold | Partial implementation; many methods inherit unsupported defaults |
cloud-runtimes-dapr |
Dapr client/provider scaffold | Partial implementation; verify every operation used by the application |
cloud-runtimes-layotto |
Layotto client/provider scaffold | Partial implementation; verify every operation used by the application |
The API module intentionally provides default methods that throw UnsupportedOperationException. An adapter artifact being present therefore does not guarantee full support for service invocation, configuration, pub/sub, state, bindings, files, locks, telemetry, or native APIs.
Before selecting an adapter:
- Inspect its client implementation for the operations your application calls.
- Test those operations against the target runtime version.
- Handle unsupported operations explicitly.
cloud-runtimes-api/src/main/java/group/rxcloud/cloudruntimes/
├── client/ # Client and provider contracts
├── domain/core/ # Invocation, configuration, pub/sub, state, secrets, bindings
├── domain/enhanced/ # Database, files, locks, telemetry and related APIs
├── domain/nativeproto/ # Provider-shaped native protocols such as Redis, SQL and S3
├── domain/saas/ # SaaS-shaped APIs
└── utils/ # Shared helpers such as TypeRef
git clone https://github.com/capa-cloud/cloud-runtimes-jvm.git
cd cloud-runtimes-jvm
mvn --batch-mode --no-transfer-progress --fail-fast clean verify \
-Pjacoco,rat,checkstyle \
-DskipTests=false \
-Dcheckstyle.skip=false \
-Drat.skip=false \
-Dmaven.javadoc.skip=true \
-Dgpg.skip=trueCI runs this command on Java 8 and Java 11.
When changing an API:
- Keep public signatures compatible or clearly document the breaking change.
- Update request/response types and adapter modules together where required.
- Add tests for implemented behavior and unsupported fallbacks.
- Do not place credentials, private endpoints, or customer data in examples or fixtures.
Apache License 2.0. See LICENSE.
