1010use Torr \TaskManager \Entity \TaskLog ;
1111use Torr \TaskManager \Model \TaskLogModel ;
1212use Torr \TaskManager \Normalizer \TaskDetailsNormalizer ;
13+ use Torr \TaskManager \Task \DispatchAfterRunTask \DispatchAfterRunTask ;
1314use Torr \TaskManager \Task \Task ;
1415
1516/**
@@ -25,16 +26,17 @@ public function __construct (
2526 /**
2627 *
2728 */
28- #[AsEventListener(SendMessageToTransportsEvent::class) ]
29+ #[AsEventListener]
2930 public function onSendMessageToTransports (SendMessageToTransportsEvent $ event ) : void
3031 {
31- $ taskLog = $ this ->getLogForEvent ($ event ->getEnvelope ());
32+ $ envelope = $ event ->getEnvelope ();
33+ $ taskLog = $ this ->getLogForEvent ($ envelope );
3234
3335 // make sure that the log entry is created and flushed
3436 if (null !== $ taskLog )
3537 {
3638 // update envelope with current version
37- $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ event -> getEnvelope () ));
39+ $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ envelope ));
3840
3941 $ this ->logModel ->flush ();
4042 }
@@ -43,18 +45,19 @@ public function onSendMessageToTransports (SendMessageToTransportsEvent $event)
4345 /**
4446 * Automatically integrate
4547 */
46- #[AsEventListener(WorkerMessageHandledEvent::class) ]
48+ #[AsEventListener]
4749 public function onWorkerMessageHandled (WorkerMessageHandledEvent $ event ) : void
4850 {
49- $ taskLog = $ this ->getLogForEvent ($ event ->getEnvelope ());
51+ $ envelope = $ event ->getEnvelope ();
52+ $ taskLog = $ this ->getLogForEvent ($ envelope );
5053
5154 if (null === $ taskLog )
5255 {
5356 return ;
5457 }
5558
5659 // update envelope with current version
57- $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ event -> getEnvelope () ));
60+ $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ envelope ));
5861
5962 // abort run as success. It wasn't marked as finished manually, but it succeeded nonetheless.
6063 $ run = $ taskLog ->getLastUnfinishedRun ();
@@ -63,18 +66,19 @@ public function onWorkerMessageHandled (WorkerMessageHandledEvent $event) : void
6366 $ this ->logModel ->flush ();
6467 }
6568
66- #[AsEventListener(WorkerMessageFailedEvent::class) ]
69+ #[AsEventListener]
6770 public function onWorkerMessageFailed (WorkerMessageFailedEvent $ event ) : void
6871 {
69- $ taskLog = $ this ->getLogForEvent ($ event ->getEnvelope ());
72+ $ envelope = $ event ->getEnvelope ();
73+ $ taskLog = $ this ->getLogForEvent ($ envelope );
7074
7175 if (null === $ taskLog )
7276 {
7377 return ;
7478 }
7579
7680 // update envelope with current version
77- $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ event -> getEnvelope () ));
81+ $ taskLog ->setTaskDetails ($ this ->detailsNormalizer ->normalizeTaskDetails ($ envelope ));
7882
7983 // abort run as failure. It wasn't marked as finished manually and it failed.
8084 $ run = $ taskLog ->getLastUnfinishedRun ();
@@ -90,7 +94,7 @@ private function getLogForEvent (Envelope $envelope) : ?TaskLog
9094 {
9195 $ message = $ envelope ->getMessage ();
9296
93- return $ message instanceof Task
97+ return $ message instanceof Task && ! $ message instanceof DispatchAfterRunTask
9498 ? $ this ->logModel ->getLogForTask ($ message )
9599 : null ;
96100 }
0 commit comments