Callback Management Platform - Models¶
Persist callback configurations, authorized domains, event subscriptions, and execution records with reactive repositories.
Use the repository interfaces from callbacks-core and apply the database migrations supplied by this module. These repositories use Spring Data relational/R2DBC contracts.
| Maven artifact | Packaging | Source project |
|---|---|---|
org.fireflyframework:fireflyframework-callbacks-models |
jar |
modules/callbacks/fireflyframework-callbacks-models |
Part of External services.
In the onboarding service¶
The callback service stores destinations, subscriptions, and executions separately from onboarding application records. Apply its migrations and use the declared reactive repositories.
Add the component¶
Installation and version availability explains source builds and published releases.
<dependency>
<groupId>org.fireflyframework</groupId>
<artifactId>fireflyframework-callbacks-models</artifactId>
<version>26.10.20-SNAPSHOT</version>
</dependency>
Quick start¶
The Java examples in this section are API fragments for application code. Use the stated imports and supply the application-owned collaborators described alongside them.
Apply the SQL migration resources linked below before invoking the reactive repositories. Inject CallbackConfigurationRepository and query the subscription candidates for a domain event:
The repository is in org.fireflyframework.callbacks.models.repository, and entities are in its sibling entities package. Compose the Flux within the service flow. Repositories also separate configuration, subscriptions, authorized domains, and executions; use their declared query methods rather than assuming that DTO fields imply a particular database lookup.
Configuration and wiring¶
This module declares no @ConfigurationProperties class of its own. Use the constructor/port contracts above and the configuration of the host or related core module.
Public API and extension points¶
| Type | Contract and responsibility |
|---|---|
CallbackConfiguration |
Entity for callback configurations. |
CallbackExecution |
Entity for callback execution tracking. |
CallbackConfigurationRepository |
Repository for callback configurations. |
EventSubscriptionRepository |
Repository for event subscriptions. |
AuthorizedDomainRepository |
Repository for authorized domains. |
Related components¶
| Related component | Why it belongs nearby |
|---|---|
| Callbacks Library | Group the outbound callback platform: configuration, domain authorization, subscriptions, execution tracking, and dispatch. |
| Callback Management Platform - Interfaces | Share callback configuration, subscription, domain, and execution DTOs and status enums. |
| R2DBC | Build reactive repository filtering and pagination on Spring Data R2DBC. |
Build and test¶
Use Java 25. From the repository root, build this component with its required dependencies:
git clone https://github.com/fireflyframework/fireflyframework-jafly.git
cd fireflyframework-jafly
./mvnw -pl :fireflyframework-callbacks-models -am verify
./mvnw -pl :fireflyframework-callbacks-models -am install
verify runs the selected projects' tests. install makes the current build available in your local Maven repository.
This subproject has no authored src/test/java suite. Its Maven build still validates the configured compilation/generation and any reactor prerequisites. Use the consuming component tests to validate integration behavior.
API reference excerpt¶
Contract excerpt from CallbackConfiguration.java. This fragment needs the full type and its imports.
public class CallbackConfiguration {
private UUID id;
private String name;
private String description;
private String url;
private HttpMethod httpMethod;
private CallbackStatus status;
private String[] subscribedEventTypes;
private String customHeaders;
private String secret;
private Boolean signatureEnabled;
private String signatureHeader;
private Integer maxRetries;
private Integer retryDelayMs;
private Double retryBackoffMultiplier;
private Integer timeoutMs;
private Boolean active;
private String tenantId;
private String filterExpression;
private String metadata;
private Integer failureThreshold;
private Integer failureCount;
private Instant lastSuccessAt;
private Instant lastFailureAt;
Continue the application¶
Use the Callback Management Platform - Core guide for the next part of this integration. The runnable submission/query service is in Getting started.