You've already forked Php-Template
All checks were successful
🧪✨ Tests Workflow / 📝 ✨ Code Lint (push) Successful in 1m13s
🧪✨ Tests Workflow / 🛡️ 🔒 Library Audit (push) Successful in 1m24s
🧪✨ Tests Workflow / 🛡️ 🔒 License Check (push) Successful in 1m58s
🧪✨ Tests Workflow / 🧪 ✨ Database Migrations (push) Successful in 2m20s
🧪✨ Tests Workflow / 🐙 🔍 Code Sniffer (push) Successful in 2m5s
🧪✨ Tests Workflow / 🧪 ✅ Unit Tests (push) Successful in 1m0s
Reviewed-on: #27 Co-authored-by: Ron Rise <ron@siteworxpro.com> Co-committed-by: Ron Rise <ron@siteworxpro.com>
31 lines
839 B
PHP
31 lines
839 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Siteworxpro\App\CommandBus\Handlers;
|
|
|
|
use Siteworxpro\App\Attributes\CommandBus\HandlesCommand;
|
|
use Siteworxpro\App\CommandBus\Commands\Command;
|
|
use Siteworxpro\App\CommandBus\Commands\ExampleCommand;
|
|
use Siteworxpro\App\Services\Facades\Logger;
|
|
|
|
#[HandlesCommand(ExampleCommand::class)]
|
|
class ExampleHandler extends CommandHandler
|
|
{
|
|
/**
|
|
* @param Command|ExampleCommand $command
|
|
* @return string
|
|
*/
|
|
public function __invoke(Command|ExampleCommand $command): string
|
|
{
|
|
if (!method_exists($command, 'getName')) {
|
|
throw new \TypeError('Invalid command type provided to ExampleHandler.');
|
|
}
|
|
|
|
$name = $command->getName();
|
|
Logger::info('Handling ExampleCommand for name: ' . $name);
|
|
|
|
return 'Hello, ' . $name . '!';
|
|
}
|
|
}
|