From 51a02c800937d77f214082d744341adb0d00ca0a Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Tue, 10 Nov 2020 21:05:32 +0100 Subject: [PATCH] ReflectionParamter::getClass is deprecated In php8 this starts throwing warnings. And since we use it quite often we flood the log. This moves it to getType which does the same. Only non deprecated now. Signed-off-by: Roeland Jago Douma --- lib/private/AppFramework/Utility/SimpleContainer.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/private/AppFramework/Utility/SimpleContainer.php b/lib/private/AppFramework/Utility/SimpleContainer.php index 3bb275a4d3..f73e09e645 100644 --- a/lib/private/AppFramework/Utility/SimpleContainer.php +++ b/lib/private/AppFramework/Utility/SimpleContainer.php @@ -73,13 +73,13 @@ class SimpleContainer implements ArrayAccess, ContainerInterface, IContainer { } return $class->newInstanceArgs(array_map(function (ReflectionParameter $parameter) { - $parameterClass = $parameter->getClass(); + $parameterType = $parameter->getType(); + + $resolveName = $parameter->getName(); // try to find out if it is a class or a simple parameter - if ($parameterClass === null) { - $resolveName = $parameter->getName(); - } else { - $resolveName = $parameterClass->name; + if ($parameterType !== null && !$parameterType->isBuiltin()) { + $resolveName = $parameterType->getName(); } try { @@ -91,7 +91,7 @@ class SimpleContainer implements ArrayAccess, ContainerInterface, IContainer { return $parameter->getDefaultValue(); } - if ($parameterClass !== null) { + if ($parameterType !== null && !$parameterType->isBuiltin()) { $resolveName = $parameter->getName(); return $this->query($resolveName); }