Skip to content

switon-php/executor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Switon Executor Package

Task execution contracts and runtime adapters for Switon Framework.

Installation

composer require switon/executor

Requirements: PHP 8.3+

Quick Start

use Switon\Core\Attribute\Autowired;
use Switon\Core\Contract\RunnerInterface;
use Switon\Executor\ExecutorInterface;

final class ReportRunner implements RunnerInterface
{
    public function run(mixed $payload): array
    {
        return ['id' => $payload['id'] ?? null];
    }
}

final class JobService
{
    #[Autowired] protected ExecutorInterface $executor;

    public function runOnce(): void
    {
        $futures = $this->executor->invokeAll([[ReportRunner::class, ['id' => 1]]]);
        // inspect $futures[0]->isSuccessful(), result(), error()
    }
}

Docs: https://docs.switon.dev/latest/executor

License

MIT.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages