8000 bug #49807 [Scheduler] `debug:schedule` refinements (kbond) · symfony/symfony@2be7e2d · GitHub
[go: up one dir, main page]

Skip to content

Commit 2be7e2d

Browse files
committed
bug #49807 [Scheduler] debug:schedule refinements (kbond)
This PR was squashed before being merged into the 6.3 branch. Discussion ---------- [Scheduler] `debug:schedule` refinements | Q | A | ------------- | --- | Branch? | 6.3 | Bug fix? | yes | New feature? | no | Deprecations? | no | Tickets | Followup to #49795 | License | MIT | Doc PR | n/a Some fixes/refinements to the output: 1. If the message is an envelope, unwrap 2. prefix stringable message/trigger with short class name ``` --------------------------- -------------------------------------- --------------------------- Message Trigger Next Run --------------------------- -------------------------------------- --------------------------- DoSomething: do something CronExpressionTrigger: * * * * * 2023-03-25T08:03:00-04:00 --------------------------- -------------------------------------- --------------------------- ``` Commits ------- 8396210 [Scheduler] `debug:schedule` refinements
2 parents 36bb70a + 8396210 commit 2be7e2d

File tree

2 files changed

+19
-3
lines changed

2 files changed

+19
-3
lines changed

src/Symfony/Component/Scheduler/Command/DebugCommand.php

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
use Symfony\Component\Console\Input\InputInterface;
1818
use Symfony\Component\Console\Output\OutputInterface;
1919
use Symfony\Component\Console\Style\SymfonyStyle;
20+
use Symfony\Comp 8000 onent\Messenger\Envelope;
2021
use Symfony\Component\Scheduler\RecurringMessage;
2122
use Symfony\Component\Scheduler\ScheduleProviderInterface;
2223
use Symfony\Contracts\Service\ServiceProviderInterface;
@@ -98,9 +99,24 @@ private static function renderRecurringMessage(RecurringMessage $recurringMessag
9899
$message = $recurringMessage->getMessage();
99100
$trigger = $recurringMessage->getTrigger();
100101

102+
if ($message instanceof Envelope) {
103+
$message = $message->getMessage();
104+
}
105+
106+
$messageName = (new \ReflectionClass($message))->getShortName();
107+
$triggerName = (new \ReflectionClass($trigger))->getShortName();
108+
109+
if ($message instanceof \Stringable) {
110+
$messageName .= ": {$message}";
111+
}
112+
113+
if ($trigger instanceof \Stringable) {
114+
$triggerName .= ": {$trigger}";
115+
}
116+
101117
return [
102-
$message instanceof \Stringable ? (string) $message : (new \ReflectionClass($message))->getShortName(),
103-
$trigger instanceof \Stringable ? (string) $trigger : (new \ReflectionClass($trigger))->getShortName(),
118+
$messageName,
119+
$triggerName,
104120
$recurringMessage->getTrigger()->getNextRunDate(now())->format(\DateTimeInterface::ATOM),
105121
];
106122
}

src/Symfony/Component/Scheduler/Trigger/CronExpressionTrigger.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public function __construct(
3030

3131
public function __toString(): string
3232
{
33-
return "cron: {$this->expression->getExpression()}";
33+
return $this->expression->getExpression();
3434
}
3535

3636
public static function fromSpec(string $expression = '* * * * *'): self

0 commit comments

Comments
 (0)
0