Health Client
The Health client checks the health of the fulfillmenttools platform. health() returns detailed per-dependency status; status() returns the overall system status.
Basic Usage
import de.joesst.dev.fulfillmenttools.health.HealthResult;
import de.joesst.dev.fulfillmenttools.health.HealthDependencyStatus;
import de.joesst.dev.fulfillmenttools.FulfillmenttoolsException;
try {
HealthResult result = client.health().health();
System.out.println("Status: " + result.status());
for (HealthDependencyStatus dep : result.dependencies()) {
System.out.println(dep.name() + ": " + dep.status());
}
} catch (FulfillmenttoolsException e) {
System.out.println("Health check failed: " + e.getMessage());
}Overall System Status
import de.joesst.dev.fulfillmenttools.health.SystemStatus;
import de.joesst.dev.fulfillmenttools.FulfillmenttoolsException;
try {
SystemStatus status = client.health().status();
System.out.println("System: " + status.status());
} catch (FulfillmenttoolsException e) {
System.out.println("Status check failed: " + e.getMessage());
}Async Usage
All methods have async variants returning CompletableFuture:
import de.joesst.dev.fulfillmenttools.health.HealthResult;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionException;
CompletableFuture<HealthResult> future = client.health().healthAsync();
future.whenComplete((result, ex) -> {
if (ex != null) {
Throwable cause = ex instanceof CompletionException && ex.getCause() != null
? ex.getCause() : ex;
System.out.println("Error: " + cause.getMessage());
} else {
System.out.println("Status: " + result.status());
result.dependencies().forEach(dep ->
System.out.println(dep.name() + ": " + dep.status())
);
}
});import de.joesst.dev.fulfillmenttools.health.SystemStatus;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionException;
CompletableFuture<SystemStatus> future = client.health().statusAsync();
future.whenComplete((status, ex) -> {
if (ex != null) {
Throwable cause = ex instanceof CompletionException && ex.getCause() != null
? ex.getCause() : ex;
System.out.println("Error: " + cause.getMessage());
} else {
System.out.println("System: " + status.status());
}
});API Reference
health()
Retrieve detailed health information including the status of all dependencies.
Returns: HealthResult — contains status() (overall) and dependencies() (list of HealthDependencyStatus)
Throws: FulfillmenttoolsException if the request fails
healthAsync()
Retrieve detailed health information asynchronously.
Returns: CompletableFuture<HealthResult>
status()
Retrieve the overall system status.
Returns: SystemStatus — contains status() (e.g. "UP", "DOWN", "DEGRADED")
Throws: FulfillmenttoolsException if the request fails
statusAsync()
Retrieve the overall system status asynchronously.
Returns: CompletableFuture<SystemStatus>