5
5
use Brick \Money \Money ;
6
6
use HiEvents \DomainObjects \AttendeeDomainObject ;
7
7
use HiEvents \DomainObjects \Enums \ProductType ;
8
- use HiEvents \DomainObjects \Enums \WebhookEventType ;
9
8
use HiEvents \DomainObjects \Generated \AttendeeDomainObjectAbstract ;
10
9
use HiEvents \DomainObjects \Generated \OrderDomainObjectAbstract ;
11
10
use HiEvents \DomainObjects \Generated \OrderItemDomainObjectAbstract ;
31
30
use HiEvents \Services \Domain \Order \OrderManagementService ;
32
31
use HiEvents \Services \Domain \Product \ProductQuantityUpdateService ;
33
32
use HiEvents \Services \Domain \Tax \TaxAndFeeRollupService ;
34
- use HiEvents \Services \Infrastructure \Webhook \WebhookDispatchService ;
33
+ use HiEvents \Services \Infrastructure \DomainEvents \DomainEventDispatcherService ;
34
+ use HiEvents \Services \Infrastructure \DomainEvents \Enums \DomainEventType ;
35
+ use HiEvents \Services \Infrastructure \DomainEvents \Events \OrderEvent ;
35
36
use Illuminate \Database \DatabaseManager ;
36
37
use Illuminate \Support \Collection ;
37
38
use RuntimeException ;
@@ -49,7 +50,7 @@ public function __construct(
49
50
private readonly TaxAndFeeRepositoryInterface $ taxAndFeeRepository ,
50
51
private readonly TaxAndFeeRollupService $ taxAndFeeRollupService ,
51
52
private readonly OrderManagementService $ orderManagementService ,
52
- private readonly WebhookDispatchService $ webhookDispatchService ,
53
+ private readonly DomainEventDispatcherService $ domainEventDispatcherService ,
53
54
)
54
55
{
55
56
}
@@ -103,7 +104,7 @@ public function handle(CreateAttendeeDTO $attendeeDTO): AttendeeDomainObject
103
104
104
105
$ this ->fireEventsAndUpdateQuantities ($ attendeeDTO , $ order );
105
106
106
- $ this ->queueWebhooks ($ attendee , $ order );
107
+ $ this ->queueWebhooks ($ order );
107
108
108
109
return $ attendee ;
109
110
});
@@ -247,11 +248,10 @@ private function fireEventsAndUpdateQuantities(CreateAttendeeDTO $attendeeDTO, O
247
248
));
248
249
}
249
250
250
- private function queueWebhooks (AttendeeDomainObject $ attendee , OrderDomainObject $ order ): void
251
+ private function queueWebhooks (OrderDomainObject $ order ): void
251
252
{
252
- $ this ->webhookDispatchService ->queueOrderWebhook (
253
- eventType: WebhookEventType::ORDER_CREATED ,
254
- orderId: $ order ->getId (),
253
+ $ this ->domainEventDispatcherService ->dispatch (
254
+ new OrderEvent (DomainEventType::ATTENDEE_CREATED , $ order ->getId ())
255
255
);
256
256
}
257
257
}
0 commit comments