stafftastic / laravel-cloudevents
该软件包已废弃,不再维护。未建议替代软件包。
用于 Laravel 项目的可重用 cloudevent 系统。
2.1.0
2023-03-23 12:30 UTC
Requires
- php: ^8.0
- cloudevents/sdk-php: ^1.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0
- mateusjunges/laravel-kafka: ^1.8
Requires (Dev)
- psalm/plugin-laravel: ^1.4
- squizlabs/php_codesniffer: ^3.5
- vimeo/psalm: ^4.1
README
此存储库不再维护。我们强烈推荐仅使用 Laravel Kafka 软件包 和 CloudEvents 库直接。
Laravel CloudEvents
一个 Laravel 库,用于将 Illuminate Events 发布到 Kafka。
安装
安装软件包
composer require stafftastic/laravel-cloudevents
用法
- 发布配置文件
php artisan vendor:publish --provider="stafftastic\LaravelCloudEvents\CloudEventServiceProvider"
- 创建应用程序上下文
<?php namespace App\Events; use App\Models\User; use Illuminate\Broadcasting\InteractsWithSockets; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; use stafftastic\CloudEvents\CloudEventable; use stafftastic\CloudEvents\IsCloudEvent; class UserCreated implements CloudEventable { use Dispatchable; use InteractsWithSockets; use SerializesModels; use IsCloudEvent; /** * Create a new event instance. * * @param \Domain\Users\Models\User $user * * @return void */ public function __construct(public User $user) { } public function getCloudEventType(): string { return 'com.stafftastic.users.created'; } public function getCloudEventTopic(): string { return 'stafftastic'; } public function toCloudEventData(): array { return [ 'user' => $this->user, ]; } }