Java

Euonia Bus-Abstract 模块 API 文档

概述

Bus-Abstract 是 Euonia 消息总线的抽象契约层,定义了消息传输、分发、约定分类、策略路由和接收者注册的核心接口。该模块不包含任何具体传输实现,而是为 bus-core(编排层)和各传输适配器(bus-inmemorybus-rabbitmqbus-kafka)提供统一的扩展点。

  • Maven 坐标: com.euonia:bus-abstract
  • Java 模块名: com.euonia.bus

导出包

com.euonia.bus.annotation

消息分类、路由和订阅的注解,用于标记消息类型和处理器方法。

类名 类型 说明
Channel annotation 指定消息处理器订阅的通道名称
DispatchIn annotation 指定消息的出站传输通道
DistributedMessage annotation 标记消息应通过分布式传输(如 Kafka、RabbitMQ)发送
Enqueue annotation 标记消息应入队等待处理,可指定队列名称和优先级
LocalMessage annotation 标记消息应通过本地传输(如内存)发送
Multicast annotation 标记消息为多播,发送给多个订阅者
ReceiveIn annotation 指定消息的入站传输通道
Request annotation 标记消息为请求-响应,指定期望的响应类型
Subscribe annotation 标记方法为消息订阅处理器,指定通道和分组
Unicast annotation 标记消息为单播,仅发送给一个订阅者

com.euonia.bus.convention

消息约定分类,决定消息投递语义。

类名 类型 说明
MessageConvention interface 消息分类契约接口
MessageConventionBuilder class 约定构建器,流式聚合多个约定
MessageConventionType enum 消息类型枚举:NONE, UNICAST, MULTICAST, REQUEST

com.euonia.bus.strategy

传输策略路由,决定消息走哪条通道。

类名 类型 说明
TransportStrategy interface 传输策略契约接口
TransportStrategyBuilder class 策略构建器,流式聚合多个策略

com.euonia.bus

核心抽象层 — 传输、分发、上下文、信封、元数据和通道处理。

类名 类型 说明
Transport interface 传输抽象契约,定义消息发布、发送和请求-响应调用的方法
Dispatcher interface 消息类型到传输名称的决策接口
Configurator interface 全局配置接口
MessageContext interface 消息处理上下文
MessageContextBase class 消息上下文的默认实现
MessageEnvelope interface 消息信封接口,封装消息数据、元数据和头信息
MessageHeaders class 消息头常量定义
MessageMetadata class 可扩展的消息元数据键值对容器
HandlerContext class 消息处理器上下文
ChannelHandler record 通道处理器,封装处理器类型、方法和实例
ChannelRegistration class 通道注册信息,包含消息类型和处理器列表

com.euonia.bus.message

消息分类标记接口。

类名 类型 说明
Message interface 消息基类标记接口
Unicast interface 单播消息标记
Multicast interface 多播消息标记
Request interface 请求-响应消息标记

com.euonia.bus.event

消息处理事件体系。

类名 类型 说明
MessageProcessedEvent class 基础事件
MessageDeliveredEvent class 消息已投递
MessageReceivedEvent class 消息已接收
MessageAcknowledgedEvent class 消息已确认
MessageRepliedEvent class 消息已回复
MessageHandledEvent class 消息已处理
MessageSubscribedEvent class 订阅事件
MessageProcessType enum 处理类型枚举

com.euonia.bus.exception

消息总线异常层次结构。

类名 类型 说明
ChannelNotRegisterException exception 通道未注册异常
MessageConventionException exception 消息约定异常
MessageDeliverException exception 消息投递失败异常
MessageProcessingException exception 消息处理失败异常
MessageTransportException exception 传输层错误异常
MessagePersistentException exception 消息持久化失败异常
MessageTypeException exception 无效/未分类的消息类型异常

com.euonia.bus.recipient

消息接收者角色定义。

类名 类型 说明
Recipient interface 接收者基类
Consumer interface 通用消费者标记
Subscriber interface 多播接收者
Executor interface 单播/请求接收者
RecipientRegistrar interface 接收者注册器

com.euonia.bus.consistency

收件箱/发件箱模式(幂等消费与事务发件)抽象。

类名 类型 说明
InboxEntry class 收件箱条目
InboxHandle class 收件箱处理句柄
InboxStore interface 收件箱存储接口
OutboxEntry class 发件箱条目
OutboxStore interface 发件箱存储接口
OutboxTransport interface 发件箱传输接口

com.euonia.bus.dlq

死信队列抽象。

类名 类型 说明
DeadLetterMessage record 死信消息

com.euonia.bus.serialization

序列化契约。

类名 类型 说明
MessageSerializer interface 消息序列化契约

依赖

  • com.euonia:core (compile)
  • org.junit.jupiter:junit-jupiter (test)
  • org.assertj:assertj-core (test)