diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-09-13 11:35:21 +0200 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2015-09-13 17:44:24 +0200 |
commit | fd745228043d04b5082995d552803e486094643c (patch) | |
tree | 434834913e628622e623e8ba4f63d4744f49d1b3 | |
parent | ca921fa1e78ce2cf64877e31b6663c3ad4854aef (diff) | |
download | nextcloud-server-fd745228043d04b5082995d552803e486094643c.tar.gz nextcloud-server-fd745228043d04b5082995d552803e486094643c.zip |
make resolve public to avoid boiler plate code
add resolve to public interface
-rw-r--r-- | lib/private/appframework/utility/simplecontainer.php | 2 | ||||
-rw-r--r-- | lib/public/icontainer.php | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/lib/private/appframework/utility/simplecontainer.php b/lib/private/appframework/utility/simplecontainer.php index 83a08acde26..5d7ea48752b 100644 --- a/lib/private/appframework/utility/simplecontainer.php +++ b/lib/private/appframework/utility/simplecontainer.php @@ -77,7 +77,7 @@ class SimpleContainer extends Container implements IContainer { * @return stdClass * @throws QueryException if the class could not be found or instantiated */ - private function resolve($name) { + public function resolve($name) { $baseMsg = 'Could not resolve ' . $name . '!'; try { $class = new ReflectionClass($name); diff --git a/lib/public/icontainer.php b/lib/public/icontainer.php index 75ff5e97b69..ffd1d16c97e 100644 --- a/lib/public/icontainer.php +++ b/lib/public/icontainer.php @@ -44,6 +44,16 @@ use Closure; interface IContainer { /** + * If a parameter is not registered in the container try to instantiate it + * by using reflection to find out how to build the class + * @param string $name the class name to resolve + * @return \stdClass + * @since 8.2.0 + * @throws QueryException if the class could not be found or instantiated + */ + public function resolve($name); + + /** * Look up a service for a given name in the container. * * @param string $name |