Class NoOpFileJournal
java.lang.Object
io.leandev.appfuse.file.tx.NoOpFileJournal
- All Implemented Interfaces:
FileJournal
不做任何事的 FileJournal
用於兩種情境:
- 交易對齊的後端(Database):本身隨交易 rollback 復原,不會產生孤兒,無需日誌。
- 關閉日誌:在
TransactionAwareFileStorage上只要交易補償/延後刪除、不要稽核軌跡時。
補償與延後刪除的正確性由 TransactionAwareFileStorage 的交易 hook 保證,與是否寫日誌無關;
日誌只影響「崩潰殘留的可對帳性」。
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription列出所有有日誌的 partition,供FileOrphanSweepTask逐區對帳readEntries(String partition) 讀取指定 partition 的所有事件,供FileOrphanSweepTask對帳使用voidrecord(JournalEntry entry) 記錄一筆檔案交易事件(append-only,不得拋出例外中斷業務流程)
-
Field Details
-
INSTANCE
共用單例
-
-
Constructor Details
-
NoOpFileJournal
public NoOpFileJournal()
-
-
Method Details
-
record
Description copied from interface:FileJournal記錄一筆檔案交易事件(append-only,不得拋出例外中斷業務流程)- Specified by:
recordin interfaceFileJournal- Parameters:
entry- 事件
-
readEntries
Description copied from interface:FileJournal讀取指定 partition 的所有事件,供FileOrphanSweepTask對帳使用- Specified by:
readEntriesin interfaceFileJournal- Parameters:
partition- 儲存分區鍵- Returns:
- 事件清單(依時間排序;無資料時回傳空清單)
-
partitions
Description copied from interface:FileJournal列出所有有日誌的 partition,供FileOrphanSweepTask逐區對帳- Specified by:
partitionsin interfaceFileJournal- Returns:
- partition 清單(無資料時回傳空清單)
-