From 31f43e52261c6a3310fdd803f83b87e98b689bf5 Mon Sep 17 00:00:00 2001 From: Robin Chalas Date: Wed, 31 Jan 2018 18:08:05 +0100 Subject: [PATCH] Don't show wanna-be-private services as public in debug:container --- .../FrameworkBundle/Console/Descriptor/JsonDescriptor.php | 8 ++++---- .../Console/Descriptor/MarkdownDescriptor.php | 8 ++++---- .../FrameworkBundle/Console/Descriptor/TextDescriptor.php | 6 +++--- .../FrameworkBundle/Console/Descriptor/XmlDescriptor.php | 6 +++--- .../Tests/Fixtures/Descriptor/builder_1_arguments.json | 4 ++-- .../Tests/Fixtures/Descriptor/builder_1_arguments.xml | 4 ++-- .../Tests/Fixtures/Descriptor/definition_arguments_1.json | 4 ++-- .../Tests/Fixtures/Descriptor/definition_arguments_1.xml | 4 ++-- 8 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php index 7b1a70e694..fde8e9280f 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php +++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php @@ -113,11 +113,11 @@ class JsonDescriptor extends Descriptor $service = $this->resolveServiceDefinition($builder, $serviceId); if ($service instanceof Alias) { - if ($showPrivate || $service->isPublic()) { + if ($showPrivate || ($service->isPublic() && !$service->isPrivate())) { $data['aliases'][$serviceId] = $this->getContainerAliasData($service); } } elseif ($service instanceof Definition) { - if (($showPrivate || $service->isPublic())) { + if (($showPrivate || ($service->isPublic() && !$service->isPrivate()))) { $data['definitions'][$serviceId] = $this->getContainerDefinitionData($service, $omitTags, $showArguments); } } else { @@ -217,7 +217,7 @@ class JsonDescriptor extends Descriptor { $data = array( 'class' => (string) $definition->getClass(), - 'public' => $definition->isPublic(), + 'public' => $definition->isPublic() && !$definition->isPrivate(), 'synthetic' => $definition->isSynthetic(), 'lazy' => $definition->isLazy(), 'shared' => $definition->isShared(), @@ -281,7 +281,7 @@ class JsonDescriptor extends Descriptor { return array( 'service' => (string) $alias, - 'public' => $alias->isPublic(), + 'public' => $alias->isPublic() && !$alias->isPrivate(), ); } diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php index a110dc7eac..9644a440df 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php +++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php @@ -139,11 +139,11 @@ class MarkdownDescriptor extends Descriptor $service = $this->resolveServiceDefinition($builder, $serviceId); if ($service instanceof Alias) { - if ($showPrivate || $service->isPublic()) { + if ($showPrivate || ($service->isPublic() && !$service->isPrivate())) { $services['aliases'][$serviceId] = $service; } } elseif ($service instanceof Definition) { - if (($showPrivate || $service->isPublic())) { + if (($showPrivate || ($service->isPublic() && !$service->isPrivate()))) { $services['definitions'][$serviceId] = $service; } } else { @@ -182,7 +182,7 @@ class MarkdownDescriptor extends Descriptor protected function describeContainerDefinition(Definition $definition, array $options = array()) { $output = '- Class: `'.$definition->getClass().'`' - ."\n".'- Public: '.($definition->isPublic() ? 'yes' : 'no') + ."\n".'- Public: '.($definition->isPublic() && !$definition->isPrivate() ? 'yes' : 'no') ."\n".'- Synthetic: '.($definition->isSynthetic() ? 'yes' : 'no') ."\n".'- Lazy: '.($definition->isLazy() ? 'yes' : 'no') ."\n".'- Shared: '.($definition->isShared() ? 'yes' : 'no') @@ -246,7 +246,7 @@ class MarkdownDescriptor extends Descriptor protected function describeContainerAlias(Alias $alias, array $options = array(), ContainerBuilder $builder = null) { $output = '- Service: `'.$alias.'`' - ."\n".'- Public: '.($alias->isPublic() ? 'yes' : 'no'); + ."\n".'- Public: '.($alias->isPublic() && !$alias->isPrivate() ? 'yes' : 'no'); if (!isset($options['id'])) { return $this->write($output); diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php index 3e14b5c2c1..ab04ff47f7 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php +++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php @@ -194,7 +194,7 @@ class TextDescriptor extends Descriptor $definition = $this->resolveServiceDefinition($builder, $serviceId); if ($definition instanceof Definition) { // filter out private services unless shown explicitly - if (!$showPrivate && !$definition->isPublic()) { + if (!$showPrivate && (!$definition->isPublic() || $definition->isPrivate())) { unset($serviceIds[$key]); continue; } @@ -212,7 +212,7 @@ class TextDescriptor extends Descriptor } } } elseif ($definition instanceof Alias) { - if (!$showPrivate && !$definition->isPublic()) { + if (!$showPrivate && (!$definition->isPublic() || $definition->isPrivate())) { unset($serviceIds[$key]); continue; } @@ -302,7 +302,7 @@ class TextDescriptor extends Descriptor $tableRows[] = array('Calls', implode(', ', $callInformation)); } - $tableRows[] = array('Public', $definition->isPublic() ? 'yes' : 'no'); + $tableRows[] = array('Public', $definition->isPublic() && !$definition->isPrivate() ? 'yes' : 'no'); $tableRows[] = array('Synthetic', $definition->isSynthetic() ? 'yes' : 'no'); $tableRows[] = array('Lazy', $definition->isLazy() ? 'yes' : 'no'); $tableRows[] = array('Shared', $definition->isShared() ? 'yes' : 'no'); diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php index da878b1ee6..cadd2ff605 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php +++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php @@ -318,7 +318,7 @@ class XmlDescriptor extends Descriptor foreach ($this->sortServiceIds($serviceIds) as $serviceId) { $service = $this->resolveServiceDefinition($builder, $serviceId); - if (($service instanceof Definition || $service instanceof Alias) && !($showPrivate || $service->isPublic())) { + if (($service instanceof Definition || $service instanceof Alias) && !($showPrivate || ($service->isPublic() && !$service->isPrivate()))) { continue; } @@ -364,7 +364,7 @@ class XmlDescriptor extends Descriptor } } - $serviceXML->setAttribute('public', $definition->isPublic() ? 'true' : 'false'); + $serviceXML->setAttribute('public', $definition->isPublic() && !$definition->isPrivate() ? 'true' : 'false'); $serviceXML->setAttribute('synthetic', $definition->isSynthetic() ? 'true' : 'false'); $serviceXML->setAttribute('lazy', $definition->isLazy() ? 'true' : 'false'); $serviceXML->setAttribute('shared', $definition->isShared() ? 'true' : 'false'); @@ -469,7 +469,7 @@ class XmlDescriptor extends Descriptor } $aliasXML->setAttribute('service', (string) $alias); - $aliasXML->setAttribute('public', $alias->isPublic() ? 'true' : 'false'); + $aliasXML->setAttribute('public', $alias->isPublic() && !$alias->isPrivate() ? 'true' : 'false'); return $dom; } diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.json index e2ab628937..df76274db6 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.json +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.json @@ -17,7 +17,7 @@ "%parameter%", { "class": "inline_service", - "public": true, + "public": false, "synthetic": false, "lazy": false, "shared": true, @@ -39,7 +39,7 @@ }, { "class": "inline_service", - "public": true, + "public": false, "synthetic": false, "lazy": false, "shared": true, diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.xml index b016ae382a..59811b00d3 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.xml +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_arguments.xml @@ -6,7 +6,7 @@ %parameter% - + arg1 arg2 @@ -15,7 +15,7 @@ foo - + diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.json b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.json index 5074d4fba6..2568b87dec 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.json +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.json @@ -15,7 +15,7 @@ "%parameter%", { "class": "inline_service", - "public": true, + "public": false, "synthetic": false, "lazy": false, "shared": true, @@ -37,7 +37,7 @@ }, { "class": "inline_service", - "public": true, + "public": false, "synthetic": false, "lazy": false, "shared": true, diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.xml index 732f99f783..e250060d75 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.xml +++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_arguments_1.xml @@ -4,7 +4,7 @@ %parameter% - + arg1 arg2 @@ -13,7 +13,7 @@ foo - +