Bolt CM を使用したタスクのスケジューリングと拡張に関する簡単な質問です。
ドキュメント: https://docs.bolt.cm/v20/tasks
拡張機能にタスク スケジューリングを追加する場合、クラス外でリスナーを指定する必要がありますか?
use Bolt\CronEvents;
$this->app['dispatcher']->addListener(CronEvents::CRON_INTERVAL, array($this, 'myJobCallbackMethod'));
class MyExtension extends \Bolt\BaseExtension {
// ...
または、初期化関数で宣言する必要がありますか?
use Bolt\CronEvents;
class MyExtension extends \Bolt\BaseExtension {
public function initialize() {
$this->app['dispatcher']->addListener(CronEvents::CRON_INTERVAL, array($this, 'myJobCallbackMethod'));
}
// ...
$this
クラスの外側はオブジェクトコンテキストの外側になる ため、後者だと思います。
ドキュメントは、それが直接続くかのように見えるので、再確認すると思いました。