Java
OutboxStore
发件箱(Outbox)持久化接口,保证领域事件与业务数据在同一事务中写入。
- Type interface
- Package:
com.euonia.bus.consistency - Author: damon(zhaorong@outlook.com)
Methods¶
insert(MessageEnvelope<?> message, List<String> transports): boolean¶
插入一条消息到发件箱。
Parameters:
- message (MessageEnvelope<?>): 消息内容
- transports (List<String>): 投递方式列表
Returns: boolean — 插入是否成功
insert(OutboxEntry entry): boolean¶
插入一条消息到发件箱。
Parameters:
- entry (OutboxEntry): 消息条目
Returns: boolean — 插入是否成功
markAsSuccess(String messageId, String transport): void¶
标记消息投递成功。
Parameters:
- messageId (String): 消息ID
- transport (String): 投递方式
markAsFailed(String messageId, String transport, String errorMessage): void¶
标记消息投递失败。
Parameters:
- messageId (String): 消息ID
- transport (String): 投递方式
- errorMessage (String): 错误信息
get(String messageId): OutboxEntry¶
获取发件箱条目。
Parameters:
- messageId (String): 消息ID
Returns: OutboxEntry — 发件箱条目
getAndCache(String messageId): OutboxEntry¶
获取发件箱条目并缓存。
Parameters:
- messageId (String): 消息ID
Returns: OutboxEntry — 发件箱条目
clearCache(): void¶
清除缓存。
getFailedMessages(): List<OutboxTransport>¶
获取投递失败的消息列表。
Returns: List<OutboxTransport> — 投递失败的消息列表