<?php

declare(strict_types=1);

namespace App\MessageHandler;

use App\Message\RemoveProspectFromResearchMessage;
use App\Service\ResearchService;
use Symfony\Component\Messenger\Handler\MessageHandlerInterface;

final class RemoveProspectFromResearchMessageHandler implements MessageHandlerInterface
{
    /**
     * @var ResearchService
     */
    private $researchService;

    public function __construct(ResearchService $researchService)
    {
        $this->researchService = $researchService;
    }

    public function __invoke(RemoveProspectFromResearchMessage $message)
    {
        $research = $message->getResearch()->removeProspect($message->getProspect());
        $this->researchService->save($research);
    }
}
