surgiollc/eloquent-message-repository

EventSauce 的 Eloquent 消息存储库

v2.0 2024-01-05 20:23 UTC

This package is auto-updated.

Last update: 2024-09-05 22:07:15 UTC


README

此包允许您将 Eloquent 用作 EventSauce 的自定义消息存储库,详情请见 EventSauce.

深受 EventSaucePHP/DoctrineMessageRepository 的启发。

要求

此包需要 PHP 8.1 和 Laravel 9 或更高版本。

安装

composer require surgio/eloquent-message-repository:^2.0.0

设置

发布迁移

php artisan vendor:publish --provider="Surgio\EloquentMessageRepository\EventSauceServiceProvider" --tag="migrations"

迁移数据库

php artisan migrate

使用方法

Eloquent 消息存储库实现了 EventSauce\EventSourcing\MessageRepository 接口,可以传递给任何 AggregateRootRepository,例如:

$aggregateRootRepository = new ConstructingAggregateRootRepository(
    SomeProcess::class,
    new EloquentMessageRepository(new ConstructingMessageSerializer())
);

测试

您可以使用以下命令运行测试:

composer test