Skip to content

Commit 416e5f4

Browse files
committed
slight refactoring
1 parent 648db48 commit 416e5f4

File tree

1 file changed

+10
-21
lines changed

1 file changed

+10
-21
lines changed

src/Maker/MakeSubscriber.php

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,12 @@ public function generate(InputInterface $input, ConsoleStyle $io, Generator $gen
8888
EventSubscriberInterface::class,
8989
]);
9090

91-
if ($this->isNeedImportConstantsClass($event)) {
91+
// Determine if we use a KernelEvents::CONSTANT or custom even name
92+
if (null !== ($eventConstant = $this->getEventConstant($event))) {
9293
$useStatements->addUseStatement(KernelEvents::class);
94+
$eventName = $eventConstant;
95+
} else {
96+
$eventName = class_exists($event) ? sprintf('%s::class', $eventClassName) : sprintf('\'%s\'', $event);
9397
}
9498

9599
if (null !== $eventFullClassName) {
@@ -101,7 +105,7 @@ public function generate(InputInterface $input, ConsoleStyle $io, Generator $gen
101105
'event/Subscriber.tpl.php',
102106
[
103107
'use_statements' => $useStatements,
104-
'event' => class_exists($event) ? sprintf('%s::class', $eventClassName) : $this->getEventConstant($event),
108+
'event' => $eventName,
105109
'event_arg' => $eventClassName ? sprintf('%s $event', $eventClassName) : '$event',
106110
'method_name' => class_exists($event) ? Str::asEventMethod($eventClassName) : Str::asEventMethod($event),
107111
]
@@ -121,30 +125,15 @@ public function configureDependencies(DependencyBuilder $dependencies): void
121125
{
122126
}
123127

124-
private function getEventConstant(string $event): string
128+
private function getEventConstant(string $event): ?string
125129
{
126130
$constants = $this->getKernelEventsConstants();
127131

128-
foreach ($constants as $name => $value) {
129-
if ($value === $event) {
130-
return 'KernelEvents::'.$name;
131-
}
132+
if (false !== ($name = array_search($event, $constants, true))) {
133+
return sprintf('KernelEvents::%s', $name);
132134
}
133135

134-
return sprintf('\'%s\'', $event);
135-
}
136-
137-
private function isNeedImportConstantsClass(string $event): bool
138-
{
139-
$constants = $this->getKernelEventsConstants();
140-
141-
foreach ($constants as $name => $value) {
142-
if ($value === $event) {
143-
return true;
144-
}
145-
}
146-
147-
return false;
136+
return null;
148137
}
149138

150139
private function getKernelEventsConstants(): array

0 commit comments

Comments
 (0)