@@ -35,8 +35,6 @@ This example will assume you want to generate thumbnail images.
35
35
36
36
<?php
37
37
38
- use Task\Scheduler\TaskInterface;
39
-
40
38
class ImageResizeWorker implements Task\TaskRunner\WorkerInterface
41
39
{
42
40
/**
@@ -67,15 +65,26 @@ This example will assume you want to generate thumbnail images.
67
65
68
66
// bootstrap
69
67
$taskStorage = new Task\PHP\ArrayStorage\TaskStorage();
68
+ $eventDispatcher = new Symfony\Component\EventDispatcher\EventDispatcher();
70
69
$taskRunner = new Task\PHP\TaskRunner($taskStorage);
71
- $scheduler = new Task\PHP\Scheduler($taskStorage, $taskRunner);
70
+ $scheduler = new Task\PHP\Scheduler($taskStorage, $eventDispatcher);
71
+
72
+ // event listener
73
+ $eventListener = new Task\PHP\RunListener($taskRunner);
74
+ $eventDispatcher->addListener(Task\PHP\Events::RUN, [$eventListener, 'onRun']);
72
75
73
76
// add worker instances
74
77
$taskRunner->addWorker('app', 'image_resize', new ImageResizeWorker());
75
78
76
79
// schedule task
77
- $scheduler->schedule('app.image_resize', new Task\Scheduler\Task(['example-1.jpg', 'thumbnails/example-1.jpg', 100]));
78
- $scheduler->schedule('app.image_resize', new Task\Scheduler\Task(['example-2.jpg', 'thumbnails/example-2.jpg', 100]));
80
+ $scheduler->schedule(
81
+ 'app.image_resize',
82
+ new Task\Scheduler\Task([__DIR__ . '/images/example-1.jpg', __DIR__ . '/images/thumbnails/example-1.jpg', 100])
83
+ );
84
+ $scheduler->schedule(
85
+ 'app.image_resize',
86
+ new Task\Scheduler\Task([__DIR__ . '/images/example-2.jpg', __DIR__ . '/images/thumbnails/example-2.jpg', 100])
87
+ );
79
88
80
89
// run task
81
90
$taskRunner->run();
0 commit comments