Record Class OutboxRelayProfile
java.lang.Object
java.lang.Record
org.j7m.middleware.application.distributed.OutboxRelayProfile
- Record Components:
publication- exact authorized logical SQL profiledestination- borrowed authenticated queue facadequeue- authorized destination FIFO queuemaximumBatch- aggregate heads per run, 1..256interval- delay after an actual completed run, 1ms..1minuteoperationBudget- original source/send budget, 1ms..25seconds
public record OutboxRelayProfile(OutboxProfile publication, org.j7m.middleware.distributed.ReplicatedQueue destination, String queue, int maximumBatch, Duration interval, Duration operationBudget)
extends Record
Finite host relay policy over the existing JDBC outbox protocol. DB reads are bounded periodic
work batches, not native queue claim polling. Relay connections are independently owned; the
publication's caller Connection is never borrowed across transactions.
-
Constructor Summary
ConstructorsConstructorDescriptionOutboxRelayProfile(OutboxProfile publication, org.j7m.middleware.distributed.ReplicatedQueue destination, String queue, int maximumBatch, Duration interval, Duration operationBudget) Validates bounded settings without opening a Connection or worker. -
Method Summary
Modifier and TypeMethodDescriptionorg.j7m.middleware.distributed.ReplicatedQueueReturns the value of thedestinationrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.interval()Returns the value of theintervalrecord component.intReturns the value of themaximumBatchrecord component.Returns the value of theoperationBudgetrecord component.Returns the value of thepublicationrecord component.queue()Returns the value of thequeuerecord component.toString()Omits endpoints, tenant and destination names from diagnostics.
-
Constructor Details
-
OutboxRelayProfile
public OutboxRelayProfile(OutboxProfile publication, org.j7m.middleware.distributed.ReplicatedQueue destination, String queue, int maximumBatch, Duration interval, Duration operationBudget) Validates bounded settings without opening a Connection or worker.
-
-
Method Details
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
publication
Returns the value of thepublicationrecord component.- Returns:
- the value of the
publicationrecord component
-
destination
public org.j7m.middleware.distributed.ReplicatedQueue destination()Returns the value of thedestinationrecord component.- Returns:
- the value of the
destinationrecord component
-
queue
-
maximumBatch
public int maximumBatch()Returns the value of themaximumBatchrecord component.- Returns:
- the value of the
maximumBatchrecord component
-
interval
-
operationBudget
Returns the value of theoperationBudgetrecord component.- Returns:
- the value of the
operationBudgetrecord component
-