*/ readonly class DeleteMonitorHandler implements HandlerInterface { public function __construct( private MonitorRepository $monitorRepository, ) {} public function handle(CommandInterface $command): ResultInterface { $monitor = $this->monitorRepository->find($command->monitorId); $this->monitorRepository->getEntityManager()->remove($monitor); $this->monitorRepository->getEntityManager()->flush(); return new DeleteMonitorResult( status: 'OK', result: [], monitor: $monitor ); } }