我有一段代码将用户(传递到工作构造器中)并通过网络套接字通知用户工作状态。
实际上是需要在handle方法的开头(作业开始之前),在handle方法的末尾(作业完成之后),然后在fail方法中添加的一行。
除了手动将其添加到每个作业之外,执行此操作的最佳方法是什么?诸如特质,中间件之类的东西,但我认为这些都不起作用。
答案 0 :(得分:0)
一种方法可以扩展作业/命令类,例如:
class MyJob extends Job {
public function handle() {
try {
do_stuff_at_start();
$this->process();
} catch (Exception $e) {
do_stuff_when_fails();
}
abstract public function process();
}
,您的所有工作都可以实现负责处理逻辑的process()方法。只是一个宽松的想法-不确定是否适合您的需求。