Class NotificationDeliveryLogBase

java.lang.Object
io.leandev.appfuse.notification.outbox.NotificationDeliveryLogBase

@MappedSuperclass public abstract class NotificationDeliveryLogBase extends Object

逐次遞送嘗試稽核 log 的欄位基類(Phase 2;由 PersistentNotificationDeliveryListener 寫入)

每列=一次遞送嘗試的快照(成功或失敗),保留完整歷程(Outbox 列只保留最終狀態與最後錯誤)。

ADR-017:框架 jar 不擁有 @Entity——本類為 @MappedSuperclass,具體 @Entity 由應用宣告。租戶欄位不在此tenant 專案的應用 entity 以 @TenantId 宣告——log 寫入發生在遞送執行緒、且 dispatcher 已以 該列租戶 runAs,Hibernate 遂自動注入正確租戶,listener 不需(也無從)手動複製。

Since:
4.0.0
  • Field Details

    • MAX_DETAIL_LENGTH

      public static final int MAX_DETAIL_LENGTH
      詳情訊息保留的最大長度
      See Also:
  • Constructor Details

    • NotificationDeliveryLogBase

      public NotificationDeliveryLogBase()
  • Method Details

    • setDetail

      public void setDetail(String detail)
      設定詳情並截斷至資料庫欄位上限。