messagePublisher = $messagePublisher; } public function onAssetsCreate(AssetsCreateEvent $event) { // this is an uploader PUSH mode $payload = [ 'message_type' => MessagePublisher::ASSETS_INGEST_TYPE, 'payload' => array_merge($event->getData(), ['type' => WorkerRunningJob::TYPE_PUSH]) ]; $this->messagePublisher->publishMessage($payload, MessagePublisher::ASSETS_INGEST_QUEUE); } public function onAssetsCreationFailure(AssetsCreationFailureEvent $event) { $payload = [ 'message_type' => MessagePublisher::ASSETS_INGEST_TYPE, 'payload' => $event->getPayload() ]; $this->messagePublisher->publishMessage( $payload, MessagePublisher::RETRY_ASSETS_INGEST_QUEUE, $event->getCount(), $event->getWorkerMessage() ); } public function onAssetsCreationRecordFailure(AssetsCreationRecordFailureEvent $event) { $payload = [ 'message_type' => MessagePublisher::CREATE_RECORD_TYPE, 'payload' => $event->getPayload() ]; $this->messagePublisher->publishMessage( $payload, MessagePublisher::RETRY_CREATE_RECORD_QUEUE, $event->getCount(), $event->getWorkerMessage() ); } public static function getSubscribedEvents() { return [ WorkerEvents::ASSETS_CREATE => 'onAssetsCreate', WorkerEvents::ASSETS_CREATION_FAILURE => 'onAssetsCreationFailure', WorkerEvents::ASSETS_CREATION_RECORD_FAILURE => 'onAssetsCreationRecordFailure' ]; } }