surgio/eloquent-message-repository

EventSauce 的 Eloquent 消息仓库

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

This package is auto-updated.

Last update: 2024-09-05 22:09:31 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