mirror of
https://github.com/Combodo/iTop.git
synced 2026-04-27 12:38:44 +02:00
N°6934 - Symfony 6.4 - upgrade Symfony bundles to 6.4 (#580)
* Update Symfony lib to version ~6.4.0 * Update code missing return type * Add an iTop general configuration entry to store application secret (Symfony mandatory parameter) * Use dependency injection in ExceptionListener & UserProvider classes
This commit is contained in:
@@ -25,7 +25,7 @@ use Symfony\Component\DependencyInjection\Exception\RuntimeException;
|
||||
class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
* @return void
|
||||
*/
|
||||
public function process(ContainerBuilder $container)
|
||||
{
|
||||
@@ -73,7 +73,7 @@ class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
$parent = $definition instanceof ChildDefinition ? $definition->getParent() : null;
|
||||
|
||||
foreach ($conditionals as $interface => $instanceofDefs) {
|
||||
if ($interface !== $class && !($reflectionClass ?? $reflectionClass = $container->getReflectionClass($class, false) ?: false)) {
|
||||
if ($interface !== $class && !($reflectionClass ??= $container->getReflectionClass($class, false) ?: false)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
$instanceofDef->setAbstract(true)->setParent($parent ?: '.abstract.instanceof.'.$id);
|
||||
$parent = '.instanceof.'.$interface.'.'.$key.'.'.$id;
|
||||
$container->setDefinition($parent, $instanceofDef);
|
||||
$instanceofTags[] = $instanceofDef->getTags();
|
||||
$instanceofTags[] = [$interface, $instanceofDef->getTags()];
|
||||
$instanceofBindings = $instanceofDef->getBindings() + $instanceofBindings;
|
||||
|
||||
foreach ($instanceofDef->getMethodCalls() as $methodCall) {
|
||||
@@ -110,7 +110,7 @@ class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
$definition->setBindings([]);
|
||||
$definition = serialize($definition);
|
||||
|
||||
if (Definition::class === \get_class($abstract)) {
|
||||
if (Definition::class === $abstract::class) {
|
||||
// cast Definition to ChildDefinition
|
||||
$definition = substr_replace($definition, '53', 2, 2);
|
||||
$definition = substr_replace($definition, 'Child', 44, 0);
|
||||
@@ -126,8 +126,9 @@ class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
// Don't add tags to service decorators
|
||||
$i = \count($instanceofTags);
|
||||
while (0 <= --$i) {
|
||||
foreach ($instanceofTags[$i] as $k => $v) {
|
||||
if (null === $definition->getDecoratedService() || \in_array($k, $tagsToKeep, true)) {
|
||||
[$interface, $tags] = $instanceofTags[$i];
|
||||
foreach ($tags as $k => $v) {
|
||||
if (null === $definition->getDecoratedService() || $interface === $definition->getClass() || \in_array($k, $tagsToKeep, true)) {
|
||||
foreach ($v as $v) {
|
||||
if ($definition->hasTag($k) && \in_array($v, $definition->getTag($k))) {
|
||||
continue;
|
||||
@@ -157,7 +158,7 @@ class ResolveInstanceofConditionalsPass implements CompilerPassInterface
|
||||
private function mergeConditionals(array $autoconfiguredInstanceof, array $instanceofConditionals, ContainerBuilder $container): array
|
||||
{
|
||||
// make each value an array of ChildDefinition
|
||||
$conditionals = array_map(function ($childDef) { return [$childDef]; }, $autoconfiguredInstanceof);
|
||||
$conditionals = array_map(fn ($childDef) => [$childDef], $autoconfiguredInstanceof);
|
||||
|
||||
foreach ($instanceofConditionals as $interface => $instanceofDef) {
|
||||
// make sure the interface/class exists (but don't validate automaticInstanceofConditionals)
|
||||
|
||||
Reference in New Issue
Block a user