AggregateId

定义一个聚合根标识符,它继承了多个接口以支持不同的功能需求. 它作为一个标识符,不仅标识聚合根,还需要支持命名、装饰器模式、租户识别以及值的比较.

See also

Properties

Link copied to clipboard
abstract val aggregateName: String
Link copied to clipboard
abstract val contextName: String
Link copied to clipboard
abstract val id: String

Represents a unique identifier for the implementing entity.

Link copied to clipboard
abstract override val namedAggregate: NamedAggregate
Link copied to clipboard
abstract val tenantId: String

获取租户ID

Functions

Link copied to clipboard
open operator override fun compareTo(other: AggregateId): Int

比较两个 AggregateId 的大小,首先确保它们属于同一个聚合根. 如果不属于同一个聚合根,则抛出 IllegalArgumentException 异常. 否则,使用标识符进行比较.

Link copied to clipboard

比较当前AggregateId对象是否与另一个对象相等 此方法重写了equals方法,用于比较两个AggregateId对象是否在业务逻辑上相等 它不仅比较对象引用,还比较对象的各个属性值

Link copied to clipboard

计算AggregateId的哈希值

Link copied to clipboard

检查两个聚合根是否属于同一个上下文并具有相同的聚合根名称。

Link copied to clipboard
Link copied to clipboard
fun AggregateId.mod(divisor: Int): Int

计算AggregateId的ID哈希值除以给定除数的余数