Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- ARCHIVED - Enum constant in enum class com.aim2be.platform.outbox.OutboxRecord.Status
C
- CIRCUIT_BREAKER_NAME - Static variable in class com.aim2be.platform.outbox.OutboxPublisher
-
Resilience4j
CircuitBreakerinstance name. - CircuitBreaker() - Constructor for class com.aim2be.platform.outbox.OutboxProperties.CircuitBreaker
- com.aim2be.platform.outbox - package com.aim2be.platform.outbox
- countByStatus(OutboxRecord.Status) - Method in interface com.aim2be.platform.outbox.OutboxRecordRepository
-
Pending-total gauge support.
E
- equals(Object) - Method in class com.aim2be.platform.outbox.OutboxRecord
-
Identity is the compound PK
(aggregateId, eventId); equals and hashCode purposefully exclude all mutable fields per JPA best practice (avoids identity flipping whenstatus/recordVersiontransitions inside a transaction). - equals(Object) - Method in class com.aim2be.platform.outbox.OutboxRecord.PK
F
- FAILED - Enum constant in enum class com.aim2be.platform.outbox.OutboxRecord.Status
- findByStatusOrderByCreatedAtAsc(OutboxRecord.Status, Pageable) - Method in interface com.aim2be.platform.outbox.OutboxRecordRepository
-
Pageable PENDING-row fetch for the poller's cold-path sweep.
- findOldestCreatedAtByStatus(OutboxRecord.Status) - Method in interface com.aim2be.platform.outbox.OutboxRecordRepository
-
Backlog-age gauge support.
- findPendingBatch(int) - Method in interface com.aim2be.platform.outbox.OutboxBackend
-
Fetches up to
batchSizeOutboxRecord.Status.PENDINGrows in FIFO (createdAt ASC) order for the cold poller's sweep. - findPendingBatch(int) - Method in class com.aim2be.platform.outbox.PgOutboxBackend
-
Fetches up to
batchSizeOutboxRecord.Status.PENDINGrows in FIFO (createdAt ASC) order for the cold poller's sweep.
G
- generate() - Static method in class com.aim2be.platform.outbox.UuidV7
-
Generate a fresh UUIDv7 anchored at
System.currentTimeMillis(). - generate(long) - Static method in class com.aim2be.platform.outbox.UuidV7
-
Generate a UUIDv7 anchored at a specific Unix-epoch millisecond.
- getAggregateId() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getAggregateId() - Method in class com.aim2be.platform.outbox.OutboxRecord.PK
- getBackend() - Method in class com.aim2be.platform.outbox.OutboxProperties
- getBatchSize() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getCircuitBreaker() - Method in class com.aim2be.platform.outbox.OutboxProperties
- getCreatedAt() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getDefaultAtMost() - Method in class com.aim2be.platform.outbox.OutboxProperties.SchedulerLock
- getEventId() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getEventId() - Method in class com.aim2be.platform.outbox.OutboxRecord.PK
- getFailureRateThreshold() - Method in class com.aim2be.platform.outbox.OutboxProperties.CircuitBreaker
- getIntervalMs() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getLastError() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getLockAtLeast() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getLockAtMost() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getMaxRetries() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getPayloadBytes() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getPoller() - Method in class com.aim2be.platform.outbox.OutboxProperties
- getRecordVersion() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getRetries() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getSchedulerLock() - Method in class com.aim2be.platform.outbox.OutboxProperties
- getSchemaVersion() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getSendTimeoutMs() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- getSentAt() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getStatus() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getTopic() - Method in class com.aim2be.platform.outbox.OutboxRecord
- getWaitDurationInOpenStateMs() - Method in class com.aim2be.platform.outbox.OutboxProperties.CircuitBreaker
H
- hashCode() - Method in class com.aim2be.platform.outbox.OutboxRecord
- hashCode() - Method in class com.aim2be.platform.outbox.OutboxRecord.PK
I
- isEnabled() - Method in class com.aim2be.platform.outbox.OutboxProperties
- isEnabled() - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- isTerminal() - Method in enum class com.aim2be.platform.outbox.OutboxRecord.Status
L
- LAST_ERROR_MAX_LENGTH - Static variable in class com.aim2be.platform.outbox.OutboxRecord
-
Maximum length of the
last_errorcolumn. - LOCK_NAME - Static variable in class com.aim2be.platform.outbox.OutboxPollerWorker
-
ShedLock name; matches the value scoped in
SchedulerLock.
M
- markFailureAttempt(UUID, UUID, String, int) - Method in interface com.aim2be.platform.outbox.OutboxBackend
-
Records a publish-failure attempt: increments the row's
retriescounter, stores the (pre-truncated) error message, AND atomically transitions the row toOutboxRecord.Status.FAILEDwhen the post-increment retries count reachesmaxRetries. - markFailureAttempt(UUID, UUID, String, int) - Method in class com.aim2be.platform.outbox.OutboxPublishCompletion
-
Persists a failure-attempt row update (retries++ + lastError) in a fresh transaction.
- markFailureAttempt(UUID, UUID, String, int) - Method in interface com.aim2be.platform.outbox.OutboxRecordRepository
-
Atomic retry-bump on publish failure.
- markFailureAttempt(UUID, UUID, String, int) - Method in class com.aim2be.platform.outbox.PgOutboxBackend
-
Records a publish-failure attempt: increments the row's
retriescounter, stores the (pre-truncated) error message, AND atomically transitions the row toOutboxRecord.Status.FAILEDwhen the post-increment retries count reachesmaxRetries. - markSent(UUID, UUID, Instant) - Method in interface com.aim2be.platform.outbox.OutboxBackend
-
Transitions a row to
OutboxRecord.Status.SENT, clearing any priorlastError. - markSent(UUID, UUID, Instant) - Method in class com.aim2be.platform.outbox.OutboxPublishCompletion
-
Transitions the row to
OutboxRecord.Status.SENTin a fresh transaction. - markSent(UUID, UUID, Instant) - Method in interface com.aim2be.platform.outbox.OutboxRecordRepository
-
Atomic PENDING → SENT transition for a single row keyed by the compound PK.
- markSent(UUID, UUID, Instant) - Method in class com.aim2be.platform.outbox.PgOutboxBackend
-
Transitions a row to
OutboxRecord.Status.SENT, clearing any priorlastError.
O
- OutboxAutoConfiguration - Class in com.aim2be.platform.outbox
-
Spring Boot auto-configuration for the outbox-publisher module.
- OutboxAutoConfiguration() - Constructor for class com.aim2be.platform.outbox.OutboxAutoConfiguration
- OutboxAutoConfigurationPackagesRegistrar - Class in com.aim2be.platform.outbox
-
Registers
com.aim2be.platform.outboxwith Spring Boot'sAutoConfigurationPackagesadditively so BOTH Hibernate's entity scan (driven by@EntityScanresolution inJpaBaseConfiguration.getPackagesToScan()) AND Spring Boot'sJpaRepositoriesAutoConfiguration(which uses the sameAutoConfigurationPackageslist to determine repository scan roots) seeOutboxRecord+OutboxRecordRepositoryWITHOUT replacing the consumer's own@SpringBootApplication-derived packages. - OutboxAutoConfigurationPackagesRegistrar() - Constructor for class com.aim2be.platform.outbox.OutboxAutoConfigurationPackagesRegistrar
- outboxBackend(OutboxRecordRepository, OutboxPublishCompletion, OutboxProperties) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
Default
OutboxBackend— the Postgres backend (Wave A.2 Phase 0a). - OutboxBackend - Interface in com.aim2be.platform.outbox
-
Storage SPI for the transactional outbox — the abstraction seam between the relay/poller orchestration (
OutboxPublisher+OutboxPollerWorker) and the underlying persistence engine (Wave A.2 Phase 0a, design doc.planning/32-wave-a2-redis-outbox-design.mdrefinement #11). - outboxCircuitBreaker(OutboxProperties, CircuitBreakerRegistry) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
The outbox-relay
CircuitBreakerwith thresholds explicitly built fromOutboxProperties.getCircuitBreaker(). - outboxCircuitBreakerRegistry() - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
Default
CircuitBreakerRegistryfor consumers that haven't declared one. - outboxLockProvider(DataSource) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
ShedLock provider backed by the application
DataSource. - outboxMetricsBinder(ObjectProvider<MeterRegistry>, OutboxRecordRepository) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
Metrics binder.
- OutboxMetricsBinder - Class in com.aim2be.platform.outbox
-
Micrometer binder for the outbox metrics enumerated in
.planning/26-stage-b-outbox-parity.md§OQ-5:im2be_outbox_pending_total— gauge of PENDING row count (polled fromOutboxRecordRepository.countByStatus(com.aim2be.platform.outbox.OutboxRecord.Status)).im2be_outbox_publish_latency_seconds— timer recorded by the publisher on each successful publish (hot or cold).im2be_outbox_backlog_age_seconds— gauge ofnow() - oldest_pending.created_at; published when at least one PENDING row exists, else reports zero.im2be_outbox_publish_failure_total— counter incremented on every failed hot or cold publish attempt. - OutboxMetricsBinder(MeterRegistry, OutboxRecordRepository) - Constructor for class com.aim2be.platform.outbox.OutboxMetricsBinder
-
Constructs the binder.
- outboxOpenTelemetryFallback() - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
Falls back to the OpenTelemetry no-op SDK when no real
OpenTelemetrybean is present — ensures the autoconfig boots in test contexts and dev environments that haven't wired OTel yet, without compromising the production observability story. - outboxPollerWorker(OutboxBackend, KafkaTemplate<byte[], byte[]>, OutboxProperties, OpenTelemetry, OutboxMetricsBinder) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
Cold poller bean.
- OutboxPollerWorker - Class in com.aim2be.platform.outbox
-
Cold-path poller that owns the
PENDING → SENTtransition for outbox rows the hot AFTER_COMMIT relay did not finish (broker outage, process crash, circuit-breaker OPEN window, etc.). - OutboxPollerWorker(OutboxBackend, KafkaTemplate<byte[], byte[]>, OutboxProperties, OpenTelemetry, OutboxMetricsBinder) - Constructor for class com.aim2be.platform.outbox.OutboxPollerWorker
-
Constructs the worker with all collaborators autowired by
OutboxAutoConfiguration. - OutboxProperties - Class in com.aim2be.platform.outbox
-
Type-safe configuration for the outbox-publisher module.
- OutboxProperties() - Constructor for class com.aim2be.platform.outbox.OutboxProperties
- OutboxProperties.Backend - Enum Class in com.aim2be.platform.outbox
-
Storage-backend selector for the
OutboxBackendSPI (Wave A.2 Phase 0a / design doc refinement #11). - OutboxProperties.CircuitBreaker - Class in com.aim2be.platform.outbox
-
Resilience4j circuit-breaker tuning for the hot AFTER_COMMIT path.
- OutboxProperties.Poller - Class in com.aim2be.platform.outbox
-
Cold-path poller configuration.
- OutboxProperties.SchedulerLock - Class in com.aim2be.platform.outbox
-
ShedLock context-wide configuration.
- outboxPublishCompletion(OutboxRecordRepository) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
REQUIRES_NEW completion helper.
- OutboxPublishCompletion - Class in com.aim2be.platform.outbox
-
Helper component that executes outbox row status updates in their OWN transaction (
Propagation.REQUIRES_NEW). - OutboxPublishCompletion(OutboxRecordRepository) - Constructor for class com.aim2be.platform.outbox.OutboxPublishCompletion
- outboxPublisher(OutboxBackend, KafkaTemplate<byte[], byte[]>, CircuitBreaker, OpenTelemetry, OutboxMetricsBinder, OutboxProperties) - Method in class com.aim2be.platform.outbox.OutboxAutoConfiguration
-
AFTER_COMMIT hot relay bean.
- OutboxPublisher - Class in com.aim2be.platform.outbox
-
Transactional outbox publisher implementing ADR-0014 D-1 + D-9 (dual-mode relay).
- OutboxPublisher(OutboxBackend, KafkaTemplate<byte[], byte[]>, CircuitBreaker, OpenTelemetry, OutboxMetricsBinder, int) - Constructor for class com.aim2be.platform.outbox.OutboxPublisher
-
Constructs an OutboxPublisher with all collaborators autowired by
OutboxAutoConfiguration. - OutboxRecord - Class in com.aim2be.platform.outbox
-
Transactional outbox row, per ADR-0014 D-4.
- OutboxRecord() - Constructor for class com.aim2be.platform.outbox.OutboxRecord
- OutboxRecord.PK - Class in com.aim2be.platform.outbox
-
Compound primary key for
OutboxRecord. - OutboxRecord.Status - Enum Class in com.aim2be.platform.outbox
-
Per-row lifecycle.
- OutboxRecordRepository - Interface in com.aim2be.platform.outbox
-
Spring Data repository for
OutboxRecord.
P
- PENDING - Enum constant in enum class com.aim2be.platform.outbox.OutboxRecord.Status
- persistPending(OutboxRecord) - Method in interface com.aim2be.platform.outbox.OutboxBackend
-
Persists a freshly-minted outbox row in
OutboxRecord.Status.PENDING. - persistPending(OutboxRecord) - Method in class com.aim2be.platform.outbox.PgOutboxBackend
-
Persists a freshly-minted outbox row in
OutboxRecord.Status.PENDING. - PG - Enum constant in enum class com.aim2be.platform.outbox.OutboxProperties.Backend
-
Postgres-backed outbox (
PgOutboxBackend) — the default and the only backend that exists in Phase 0a. - PgOutboxBackend - Class in com.aim2be.platform.outbox
-
Default Postgres-backed
OutboxBackend— the verbatim PG storage logic extracted fromOutboxPublisher+OutboxPollerWorkerduring Wave A.2 Phase 0a (design doc.planning/32-wave-a2-redis-outbox-design.mdrefinement #11) with ZERO behaviour change. - PgOutboxBackend(OutboxRecordRepository, OutboxPublishCompletion) - Constructor for class com.aim2be.platform.outbox.PgOutboxBackend
-
Constructs the PG backend.
- PK() - Constructor for class com.aim2be.platform.outbox.OutboxRecord.PK
- PK(UUID, UUID) - Constructor for class com.aim2be.platform.outbox.OutboxRecord.PK
- pollAndPublishPending() - Method in class com.aim2be.platform.outbox.OutboxPollerWorker
-
Scheduled tick.
- Poller() - Constructor for class com.aim2be.platform.outbox.OutboxProperties.Poller
- publish(String, byte[], int, UUID) - Method in class com.aim2be.platform.outbox.OutboxPublisher
-
Deprecated.
- publish(String, Function<UUID, byte[]>, int, UUID) - Method in class com.aim2be.platform.outbox.OutboxPublisher
-
Atomically inserts an outbox row in
OutboxRecord.Status.PENDINGand registers an AFTER_COMMIT hook that attempts the Kafka send fire-and-forget — accepting a deferred-serialisationFunction<UUID, byte[]>so the payload's embeddedevent_idfield stays in lockstep with the outbox row'sevent_id(Memora #3555 / #3556).
R
- recordFailure(String) - Method in class com.aim2be.platform.outbox.OutboxMetricsBinder
-
Increments the
im2be_outbox_publish_failure_total{topic=...}counter. - recordPublishLatency(String, Duration) - Method in class com.aim2be.platform.outbox.OutboxMetricsBinder
-
Records one publish latency observation under the
im2be_outbox_publish_latency_seconds{topic=...}timer. - REDIS - Enum constant in enum class com.aim2be.platform.outbox.OutboxProperties.Backend
-
Redis-backed outbox — RESERVED for Wave A.2 Phase 0b.
- registerBeanDefinitions(AnnotationMetadata, BeanDefinitionRegistry) - Method in class com.aim2be.platform.outbox.OutboxAutoConfigurationPackagesRegistrar
- requiresActiveTransaction() - Method in interface com.aim2be.platform.outbox.OutboxBackend
-
Whether
OutboxBackend.persistPending(OutboxRecord)requires an active Spring-managed transaction to be in progress on the calling thread. - requiresActiveTransaction() - Method in class com.aim2be.platform.outbox.PgOutboxBackend
-
Whether
OutboxBackend.persistPending(OutboxRecord)requires an active Spring-managed transaction to be in progress on the calling thread.
S
- SchedulerLock() - Constructor for class com.aim2be.platform.outbox.OutboxProperties.SchedulerLock
- SENT - Enum constant in enum class com.aim2be.platform.outbox.OutboxRecord.Status
- setAggregateId(UUID) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setBackend(OutboxProperties.Backend) - Method in class com.aim2be.platform.outbox.OutboxProperties
- setBatchSize(int) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setCreatedAt(Instant) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setDefaultAtMost(String) - Method in class com.aim2be.platform.outbox.OutboxProperties.SchedulerLock
- setEnabled(boolean) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setEnabled(boolean) - Method in class com.aim2be.platform.outbox.OutboxProperties
- setEventId(UUID) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setFailureRateThreshold(int) - Method in class com.aim2be.platform.outbox.OutboxProperties.CircuitBreaker
- setIntervalMs(long) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setLastError(String) - Method in class com.aim2be.platform.outbox.OutboxRecord
-
Sets the last-error message, truncating to
OutboxRecord.LAST_ERROR_MAX_LENGTHcharacters when longer (avoids DB constraint violations from unbounded Kafka exception stacks). - setLockAtLeast(String) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setLockAtMost(String) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setMaxRetries(int) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setPayloadBytes(byte[]) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setRecordVersion(long) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setRetries(int) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setSchemaVersion(int) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setSendTimeoutMs(long) - Method in class com.aim2be.platform.outbox.OutboxProperties.Poller
- setSentAt(Instant) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setStatus(OutboxRecord.Status) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setTopic(String) - Method in class com.aim2be.platform.outbox.OutboxRecord
- setWaitDurationInOpenStateMs(long) - Method in class com.aim2be.platform.outbox.OutboxProperties.CircuitBreaker
T
- timestampMs(UUID) - Static method in class com.aim2be.platform.outbox.UuidV7
-
Extract the embedded Unix-epoch millisecond timestamp from a UUIDv7.
- toString() - Method in class com.aim2be.platform.outbox.OutboxRecord
U
- UuidV7 - Class in com.aim2be.platform.outbox
-
UUIDv7 generator per draft-ietf-uuidrev-rfc4122bis (RFC9562 §5.7).
V
- valueOf(String) - Static method in enum class com.aim2be.platform.outbox.OutboxProperties.Backend
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class com.aim2be.platform.outbox.OutboxRecord.Status
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class com.aim2be.platform.outbox.OutboxProperties.Backend
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class com.aim2be.platform.outbox.OutboxRecord.Status
-
Returns an array containing the constants of this enum class, in the order they are declared.
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
OutboxPublisher.publish(String, Function, int, UUID)instead. The byte[] overload generates the outbox row's eventId internally, leaving the caller no opportunity to embed the same id in the payload — operators cannot correlate Kafka messages back to outbox rows by event_id (Memora #3555). The new overload accepts a deferred-serialisationFunction<UUID, byte[]>that receives the outbox-issued eventId, keeping the payload's embedded event_id in lockstep with the row's. Retained (forRemoval=false) for callers serialising opaque already-encoded bytes where the payload schema has NO event_id field.