*/ readonly class DeleteDownloadHandler implements HandlerInterface { public function __construct( private DownloadRepository $downloadRepository, ) {} public function handle(CommandInterface $command): ResultInterface { $download = $this->downloadRepository->find($command->downloadId); $this->downloadRepository->delete($command->downloadId); return new DeleteDownloadResult(200, 'Success', $download); } }