technoly/neoseventstore-cycleadapter

基于Cycle ORM的neos/event-store实现

2.0.0 2024-04-29 08:14 UTC

This package is auto-updated.

Last update: 2024-08-29 08:56:51 UTC


README

用于neos/eventstore包的数据库适配器实现。它本质上是对neos/eventstore包的Doctrine适配器的修改,用于Cycle ORM / Spiral框架

注意 目前该软件包支持MySQL(包括MariaDB)和PostgreSQL。

使用方法

通过 composer 安装

composer require technoly/neos-eventstore-cycleadapter

创建实例

要创建CycleEventStore,需要一个\Cycle\Database\DatabaseInterface的实例。它可以通过DatabaseManager获取,或者在您使用Spiral框架时在Spiral引导程序中进行配置。

请参阅Cycle文档获取更多详细信息。

有了这些,可以创建一个Event Store实例

use Cycle\Database;
use Cycle\Database\Config;
use Technoly\NeosEventStore\CycleAdapter\CycleEventStore;

$dbConfig = new Config\DatabaseConfig([
    // your database configuration
]);
$dbal = new Database\DatabaseManager($dbConfig);

$eventTableName = 'some_namespace_events';
$eventStore = new CycleEventStore($dbal->database('default'), $eventTableName);

请参阅neos/eventstore包的README,了解如何编写和读取事件。

已知限制

CycleEventStore->status()方法返回OK,即使需要设置,因为MariaDB(JSON列存储为longtext)存在误报。

贡献

非常欢迎以问题拉取请求形式做出的贡献。

许可证

请参阅LICENSE