Record Class OutboxProfile

java.lang.Object
java.lang.Record
org.j7m.middleware.application.distributed.OutboxProfile
Record Components:
namespace - annotation-selected logical outbox name authorized by this host profile
tenant - stable authorized tenant
publisherId - stable logical producer contract ID, independent of bundle deployment
publisherVersion - positive logical producer version
jdbcPolicy - exact participating A11 profile name
jdbcRegistration - exact borrowed registration installed in the JDBC policy
codec - trusted side-effect-free data codec with explicit schema allowlist
intents - borrowed D12 first-writer frame/trace retention backend
intentRetention - finite intent retention1ms..1day; EXPIRED never silently reexecutes
payloadRetention - earliest sent-payload prune time, 1ms..365days
telemetry - optional borrowed telemetry integration

public record OutboxProfile(String namespace, String tenant, String publisherId, int publisherVersion, String jdbcPolicy, ManagedJdbcTransactionPolicy.Registration jdbcRegistration, ManagedPayloadCodec codec, org.j7m.middleware.distributed.DeduplicatedRpc intents, Duration intentRetention, Duration payloadRetention, org.j7m.middleware.integrations.Observability telemetry) extends Record
One host-owned logical SQL outbox and exact A11 connection capability. SQL scope includes tenant and logical publisher identity/version, so sharing physical tables cannot suppress another domain. Retained identity/order tombstones are not evicted; payload pruning is separate from delivery.
  • Constructor Details

  • Method Details

    • toString

      public String toString()
      Omits endpoint, tenant and factory details from diagnostics.
      Specified by:
      toString in class Record
      Returns:
      safe fixed profile label
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      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 with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • namespace

      public String namespace()
      Returns the value of the namespace record component.
      Returns:
      the value of the namespace record component
    • tenant

      public String tenant()
      Returns the value of the tenant record component.
      Returns:
      the value of the tenant record component
    • publisherId

      public String publisherId()
      Returns the value of the publisherId record component.
      Returns:
      the value of the publisherId record component
    • publisherVersion

      public int publisherVersion()
      Returns the value of the publisherVersion record component.
      Returns:
      the value of the publisherVersion record component
    • jdbcPolicy

      public String jdbcPolicy()
      Returns the value of the jdbcPolicy record component.
      Returns:
      the value of the jdbcPolicy record component
    • jdbcRegistration

      public ManagedJdbcTransactionPolicy.Registration jdbcRegistration()
      Returns the value of the jdbcRegistration record component.
      Returns:
      the value of the jdbcRegistration record component
    • codec

      public ManagedPayloadCodec codec()
      Returns the value of the codec record component.
      Returns:
      the value of the codec record component
    • intents

      public org.j7m.middleware.distributed.DeduplicatedRpc intents()
      Returns the value of the intents record component.
      Returns:
      the value of the intents record component
    • intentRetention

      public Duration intentRetention()
      Returns the value of the intentRetention record component.
      Returns:
      the value of the intentRetention record component
    • payloadRetention

      public Duration payloadRetention()
      Returns the value of the payloadRetention record component.
      Returns:
      the value of the payloadRetention record component
    • telemetry

      public org.j7m.middleware.integrations.Observability telemetry()
      Returns the value of the telemetry record component.
      Returns:
      the value of the telemetry record component