Skip to content

Commit 03c1fa2

Browse files
committed
Use ::class constant
1 parent 3d790a6 commit 03c1fa2

File tree

6 files changed

+96
-97
lines changed

6 files changed

+96
-97
lines changed

src/DependencyInjection/Compiler/LoggerChannelPass.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public function process(ContainerBuilder $container): void
7575
$binding->setValues($values);
7676

7777
$bindings = $definition->getBindings();
78-
$bindings['Psr\Log\LoggerInterface'] = $binding;
78+
$bindings[LoggerInterface::class] = $binding;
7979
$definition->setBindings($bindings);
8080
}
8181
}

src/DependencyInjection/Configuration.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -940,7 +940,7 @@ private function addVerbosityLevelSection(ArrayNodeDefinition $handlerNode): voi
940940
->always(function ($v) {
941941
$map = [];
942942
foreach ($v as $verbosity => $level) {
943-
$verbosityConstant = 'Symfony\Component\Console\Output\OutputInterface::'.$verbosity;
943+
$verbosityConstant = \Symfony\Component\Console\Output\OutputInterface::class.'::'.$verbosity;
944944

945945
if (!\defined($verbosityConstant)) {
946946
throw new InvalidConfigurationException(\sprintf('The configured verbosity "%s" is invalid as it is not defined in Symfony\Component\Console\Output\OutputInterface.', $verbosity));

src/DependencyInjection/MonologExtension.php

Lines changed: 57 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@
1818
use Monolog\Processor\ProcessorInterface;
1919
use Monolog\Processor\PsrLogMessageProcessor;
2020
use Monolog\ResettableInterface;
21+
use Symfony\Bridge\Monolog\Handler\FingersCrossed\HttpCodeActivationStrategy;
2122
use Symfony\Bridge\Monolog\Processor\TokenProcessor;
23+
use Symfony\Bundle\MonologBundle\MonologBundle;
2224
use Symfony\Component\Config\FileLocator;
2325
use Symfony\Component\DependencyInjection\Argument\BoundArgument;
2426
use Symfony\Component\DependencyInjection\ChildDefinition;
@@ -146,7 +148,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
146148
$definition = new Definition($handlerClass);
147149

148150
if ($handler['include_stacktraces']) {
149-
$definition->setConfigurator(['Symfony\\Bundle\\MonologBundle\\MonologBundle', 'includeStacktraces']);
151+
$definition->setConfigurator([MonologBundle::class, 'includeStacktraces']);
150152
}
151153

152154
if (null === $handler['process_psr_3_messages']['enabled']) {
@@ -192,8 +194,8 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
192194
case 'gelf':
193195
if (isset($handler['publisher']['id'])) {
194196
$publisher = new Reference($handler['publisher']['id']);
195-
} elseif (class_exists('Gelf\Transport\UdpTransport')) {
196-
$transport = new Definition("Gelf\Transport\UdpTransport", [
197+
} elseif (class_exists(\Gelf\Transport\UdpTransport::class)) {
198+
$transport = new Definition(\Gelf\Transport\UdpTransport::class, [
197199
$handler['publisher']['hostname'],
198200
$handler['publisher']['port'],
199201
$handler['publisher']['chunk_size'],
@@ -202,9 +204,9 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
202204

203205
if (isset($handler['publisher']['encoder'])) {
204206
if ('compressed_json' === $handler['publisher']['encoder']) {
205-
$encoderClass = 'Gelf\Encoder\CompressedJsonEncoder';
207+
$encoderClass = \Gelf\Encoder\CompressedJsonEncoder::class;
206208
} elseif ('json' === $handler['publisher']['encoder']) {
207-
$encoderClass = 'Gelf\Encoder\JsonEncoder';
209+
$encoderClass = \Gelf\Encoder\JsonEncoder::class;
208210
} else {
209211
throw new \RuntimeException('The gelf message encoder must be either "compressed_json" or "json".');
210212
}
@@ -215,7 +217,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
215217
$transport->addMethodCall('setMessageEncoder', [$encoder]);
216218
}
217219

218-
$publisher = new Definition('Gelf\Publisher', []);
220+
$publisher = new Definition(\Gelf\Publisher::class, []);
219221
$publisher->addMethodCall('addTransport', [$transport]);
220222
$publisher->setPublic(false);
221223
} else {
@@ -241,7 +243,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
241243

242244
$server .= $handler['mongo']['host'].':'.$handler['mongo']['port'];
243245

244-
$client = new Definition('MongoDB\Client', [
246+
$client = new Definition(\MongoDB\Client::class, [
245247
$server,
246248
]);
247249

@@ -264,8 +266,8 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
264266
} else {
265267
if ('elastic_search' === $handler['type']) {
266268
// v8 has a new Elastic\ prefix
267-
$client = new Definition(class_exists('Elastic\Elasticsearch\Client') ? 'Elastic\Elasticsearch\Client' : 'Elasticsearch\Client');
268-
$factory = class_exists('Elastic\Elasticsearch\ClientBuilder') ? 'Elastic\Elasticsearch\ClientBuilder' : 'Elasticsearch\ClientBuilder';
269+
$client = new Definition(class_exists(\Elastic\Elasticsearch\Client::class) ? \Elastic\Elasticsearch\Client::class : \Elasticsearch\Client::class);
270+
$factory = class_exists(\Elastic\Elasticsearch\ClientBuilder::class) ? \Elastic\Elasticsearch\ClientBuilder::class : \Elasticsearch\ClientBuilder::class;
269271
$client->setFactory([$factory, 'fromConfig']);
270272
$clientArguments = [
271273
'hosts' => $handler['elasticsearch']['hosts'] ?? [$handler['elasticsearch']['host']],
@@ -275,7 +277,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
275277
$clientArguments['basicAuthentication'] = [$handler['elasticsearch']['user'], $handler['elasticsearch']['password']];
276278
}
277279
} else {
278-
$client = new Definition('Elastica\Client');
280+
$client = new Definition(\Elastica\Client::class);
279281

280282
if (isset($handler['elasticsearch']['hosts'])) {
281283
$clientArguments = [
@@ -394,7 +396,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
394396
if (isset($handler['activation_strategy'])) {
395397
$activation = new Reference($handler['activation_strategy']);
396398
} elseif (!empty($handler['excluded_http_codes'])) {
397-
$activationDef = new Definition('Symfony\Bridge\Monolog\Handler\FingersCrossed\HttpCodeActivationStrategy', [
399+
$activationDef = new Definition(HttpCodeActivationStrategy::class, [
398400
new Reference('request_stack'),
399401
$handler['excluded_http_codes'],
400402
$activation,
@@ -514,7 +516,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
514516
$prototype = new Reference($handler['email_prototype']['id']);
515517
}
516518
} else {
517-
$prototype = (new Definition('Symfony\Component\Mime\Email'))
519+
$prototype = (new Definition(\Symfony\Component\Mime\Email::class))
518520
->setPublic(false)
519521
->addMethodCall('from', [$handler['from_email']])
520522
->addMethodCall('to', $handler['to_email'])
@@ -666,7 +668,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
666668
]);
667669

668670
if (empty($handler['formatter'])) {
669-
$formatter = new Definition("Monolog\Formatter\FlowdockFormatter", [
671+
$formatter = new Definition(\Monolog\Formatter\FlowdockFormatter::class, [
670672
$handler['source'],
671673
$handler['from_email'],
672674
]);
@@ -684,7 +686,7 @@ private function buildHandler(ContainerBuilder $container, string $name, array $
684686
} else {
685687
$config = $handler['config'] ?: [];
686688
$config['access_token'] = $handler['token'];
687-
$rollbar = new Definition('RollbarNotifier', [
689+
$rollbar = new Definition(\RollbarNotifier::class, [
688690
$config,
689691
]);
690692
$rollbarId = 'monolog.rollbar.notifier.'.sha1(json_encode($config));
@@ -779,47 +781,47 @@ private function getHandlerId(string $name): string
779781
private function getHandlerClassByType(string $handlerType): string
780782
{
781783
return match ($handlerType) {
782-
'stream' => 'Monolog\Handler\StreamHandler',
783-
'console' => 'Symfony\Bridge\Monolog\Handler\ConsoleHandler',
784-
'group' => 'Monolog\Handler\GroupHandler',
785-
'buffer' => 'Monolog\Handler\BufferHandler',
786-
'deduplication' => 'Monolog\Handler\DeduplicationHandler',
787-
'rotating_file' => 'Monolog\Handler\RotatingFileHandler',
788-
'syslog' => 'Monolog\Handler\SyslogHandler',
789-
'syslogudp' => 'Monolog\Handler\SyslogUdpHandler',
790-
'null' => 'Monolog\Handler\NullHandler',
791-
'test' => 'Monolog\Handler\TestHandler',
792-
'gelf' => 'Monolog\Handler\GelfHandler',
793-
'rollbar' => 'Monolog\Handler\RollbarHandler',
794-
'flowdock' => 'Monolog\Handler\FlowdockHandler',
795-
'browser_console' => 'Monolog\Handler\BrowserConsoleHandler',
796-
'firephp' => 'Symfony\Bridge\Monolog\Handler\FirePHPHandler',
797-
'chromephp' => 'Symfony\Bridge\Monolog\Handler\ChromePhpHandler',
798-
'native_mailer' => 'Monolog\Handler\NativeMailerHandler',
799-
'symfony_mailer' => 'Symfony\Bridge\Monolog\Handler\MailerHandler',
800-
'socket' => 'Monolog\Handler\SocketHandler',
801-
'pushover' => 'Monolog\Handler\PushoverHandler',
802-
'newrelic' => 'Monolog\Handler\NewRelicHandler',
803-
'slack' => 'Monolog\Handler\SlackHandler',
804-
'slackwebhook' => 'Monolog\Handler\SlackWebhookHandler',
805-
'cube' => 'Monolog\Handler\CubeHandler',
806-
'amqp' => 'Monolog\Handler\AmqpHandler',
807-
'error_log' => 'Monolog\Handler\ErrorLogHandler',
808-
'loggly' => 'Monolog\Handler\LogglyHandler',
809-
'logentries' => 'Monolog\Handler\LogEntriesHandler',
810-
'whatfailuregroup' => 'Monolog\Handler\WhatFailureGroupHandler',
811-
'fingers_crossed' => 'Monolog\Handler\FingersCrossedHandler',
812-
'filter' => 'Monolog\Handler\FilterHandler',
813-
'mongo' => 'Monolog\Handler\MongoDBHandler',
814-
'telegram' => 'Monolog\Handler\TelegramBotHandler',
815-
'server_log' => 'Symfony\Bridge\Monolog\Handler\ServerLogHandler',
816-
'redis', 'predis' => 'Monolog\Handler\RedisHandler',
817-
'insightops' => 'Monolog\Handler\InsightOpsHandler',
818-
'sampling' => 'Monolog\Handler\SamplingHandler',
819-
'elastica' => 'Monolog\Handler\ElasticaHandler',
820-
'elastic_search' => 'Monolog\Handler\ElasticsearchHandler',
821-
'fallbackgroup' => 'Monolog\Handler\FallbackGroupHandler',
822-
'noop' => 'Monolog\Handler\NoopHandler',
784+
'stream' => \Monolog\Handler\StreamHandler::class,
785+
'console' => \Symfony\Bridge\Monolog\Handler\ConsoleHandler::class,
786+
'group' => \Monolog\Handler\GroupHandler::class,
787+
'buffer' => \Monolog\Handler\BufferHandler::class,
788+
'deduplication' => \Monolog\Handler\DeduplicationHandler::class,
789+
'rotating_file' => \Monolog\Handler\RotatingFileHandler::class,
790+
'syslog' => \Monolog\Handler\SyslogHandler::class,
791+
'syslogudp' => \Monolog\Handler\SyslogUdpHandler::class,
792+
'null' => \Monolog\Handler\NullHandler::class,
793+
'test' => \Monolog\Handler\TestHandler::class,
794+
'gelf' => \Monolog\Handler\GelfHandler::class,
795+
'rollbar' => \Monolog\Handler\RollbarHandler::class,
796+
'flowdock' => \Monolog\Handler\FlowdockHandler::class,
797+
'browser_console' => \Monolog\Handler\BrowserConsoleHandler::class,
798+
'firephp' => \Symfony\Bridge\Monolog\Handler\FirePHPHandler::class,
799+
'chromephp' => \Symfony\Bridge\Monolog\Handler\ChromePhpHandler::class,
800+
'native_mailer' => \Monolog\Handler\NativeMailerHandler::class,
801+
'symfony_mailer' => \Symfony\Bridge\Monolog\Handler\MailerHandler::class,
802+
'socket' => \Monolog\Handler\SocketHandler::class,
803+
'pushover' => \Monolog\Handler\PushoverHandler::class,
804+
'newrelic' => \Monolog\Handler\NewRelicHandler::class,
805+
'slack' => \Monolog\Handler\SlackHandler::class,
806+
'slackwebhook' => \Monolog\Handler\SlackWebhookHandler::class,
807+
'cube' => \Monolog\Handler\CubeHandler::class,
808+
'amqp' => \Monolog\Handler\AmqpHandler::class,
809+
'error_log' => \Monolog\Handler\ErrorLogHandler::class,
810+
'loggly' => \Monolog\Handler\LogglyHandler::class,
811+
'logentries' => \Monolog\Handler\LogEntriesHandler::class,
812+
'whatfailuregroup' => \Monolog\Handler\WhatFailureGroupHandler::class,
813+
'fingers_crossed' => \Monolog\Handler\FingersCrossedHandler::class,
814+
'filter' => \Monolog\Handler\FilterHandler::class,
815+
'mongo' => \Monolog\Handler\MongoDBHandler::class,
816+
'telegram' => \Monolog\Handler\TelegramBotHandler::class,
817+
'server_log' => \Symfony\Bridge\Monolog\Handler\ServerLogHandler::class,
818+
'redis', 'predis' => \Monolog\Handler\RedisHandler::class,
819+
'insightops' => \Monolog\Handler\InsightOpsHandler::class,
820+
'sampling' => \Monolog\Handler\SamplingHandler::class,
821+
'elastica' => \Monolog\Handler\ElasticaHandler::class,
822+
'elastic_search' => \Monolog\Handler\ElasticsearchHandler::class,
823+
'fallbackgroup' => \Monolog\Handler\FallbackGroupHandler::class,
824+
'noop' => \Monolog\Handler\NoopHandler::class,
823825
default => throw new \InvalidArgumentException(\sprintf('There is no handler class defined for handler "%s".', $handlerType)),
824826
};
825827
}

tests/DependencyInjection/Compiler/LoggerChannelPassTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ public function testAutowiredLoggerArgumentsAreReplacedWithChannelLogger()
8181
{
8282
$container = $this->getFunctionalContainer();
8383

84-
$dummyService = $container->register('dummy_service', 'Symfony\Bundle\MonologBundle\Tests\DependencyInjection\Compiler\DummyService')
84+
$dummyService = $container->register('dummy_service', DummyService::class)
8585
->setAutowired(true)
8686
->setPublic(true)
8787
->addTag('monolog.logger', ['channel' => 'test']);
@@ -95,10 +95,10 @@ public function testAutowiredLoggerArgumentsAreReplacedWithChannelLoggerWhenAuto
9595
{
9696
$container = $this->getFunctionalContainer();
9797

98-
$container->registerForAutoconfiguration('Symfony\Bundle\MonologBundle\Tests\DependencyInjection\Compiler\DummyService')
98+
$container->registerForAutoconfiguration(DummyService::class)
9999
->setProperty('fake', 'dummy');
100100

101-
$container->register('dummy_service', 'Symfony\Bundle\MonologBundle\Tests\DependencyInjection\Compiler\DummyService')
101+
$container->register('dummy_service', DummyService::class)
102102
->setAutowired(true)
103103
->setAutoconfigured(true)
104104
->setPublic(true)
@@ -113,7 +113,7 @@ public function testAutowiredLoggerArgumentsAreNotReplacedWithChannelLoggerIfLog
113113
{
114114
$container = $this->getFunctionalContainer();
115115

116-
$dummyService = $container->register('dummy_service', 'Symfony\Bundle\MonologBundle\Tests\DependencyInjection\Compiler\DummyService')
116+
$dummyService = $container->register('dummy_service', DummyService::class)
117117
->setAutowired(true)
118118
->addArgument(new Reference('monolog.logger'))
119119
->addTag('monolog.logger', ['channel' => 'test']);
@@ -127,7 +127,7 @@ public function testTagNotBreakingIfNoLogger()
127127
{
128128
$container = $this->getFunctionalContainer();
129129

130-
$dummyService = $container->register('dummy_service', 'stdClass')
130+
$dummyService = $container->register('dummy_service', \stdClass::class)
131131
->addTag('monolog.logger', ['channel' => 'test']);
132132

133133
$container->compile();

0 commit comments

Comments
 (0)