bpartner / tasks
使调用任务变得简单
2.3.2
2024-01-12 14:38 UTC
Requires
- php: ^7.2|^8.0
- illuminate/support: 5.*|6.*|7.*|8.*|9.*|10.*|11.*
Requires (Dev)
- orchestra/testbench: 3.8.*
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2024-09-12 16:17:00 UTC
README
使用此特质轻松调用您的任务
安装
您可以通过composer安装此包
composer require bpartner/tasks
用法
创建任务
namespace App\Test; use Bpartner\Tasks\Tasks; class Task extends Tasks { /** * @param \Illuminate\Support\Fluent $object #for Laravel * * @return mixed */ public function __invoke($object) { // TODO: Implement __invoke() method. } }
在任何类中使用CallableTrait的Task
use Illuminate\Support\Fluent; use Illuminate\Http\Request; class Controller { use CallableTrait; public function index(Request $request) { $data = new Fluent($request->all()); return $this->run(\App\Test\Tasks::class, $data); } }
从任务中运行管道
要启动任务序列,您必须首先将特质 use PipelineTaskTrait;
添加到所有任务中。
在任务中实现handle方法。
在代码中使用CallableTrait的任何位置,您需要从任务序列创建一个数组,
并调用 $this->runPipe($data, $pipes);
方法。
namespace App\Test; use Bpartner\Tasks\Tasks; use Bpartner\Tasks\PipelineTaskTrait; class Task extends Tasks { use PipelineTaskTrait; /** * @param \Illuminate\Support\Fluent $object * * @return mixed */ public function __invoke($object) { // TODO: Implement __invoke() method. } /** * @param \Illuminate\Support\Fluent $content * @param \Closure $next * * @return mixed */ public function handle(Fluent $content, Closure $next): Fluent { //Check or modify $content return $next($content); } } //---------------------------------------------- use Illuminate\Support\Fluent; use Illuminate\Http\Request; class Controller { use CallableTrait; public function index(Request $request) { $data = new Fluent($request->all()); $pipes = [ \App\Test\Task::class, \App\Test\Task2::class ]; return $this->runPipe($data, $pipes); } }
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅 许可证文件。