]> git.mxchange.org Git - friendica.git/blobdiff - src/DI.php
Merge pull request #11002 from nupplaphil/feat/modules_constructor
[friendica.git] / src / DI.php
index ecc65bbc98e8294089de4c51c9c9c5140da8342a..0c134f37b48cbf38c4b96cfc117469f6dc11707e 100644 (file)
@@ -99,11 +99,11 @@ abstract class DI
        }
 
        /**
-        * @return App\Module
+        * @return App\ModuleController
         */
        public static function module()
        {
-               return self::$dice->create(App\Module::class);
+               return self::$dice->create(App\ModuleController::class);
        }
 
        /**
@@ -195,11 +195,11 @@ abstract class DI
        }
 
        /**
-        * @return Core\Process
+        * @return Core\Worker\Repository\Process
         */
        public static function process()
        {
-               return self::$dice->create(Core\Process::class);
+               return self::$dice->create(Core\Worker\Repository\Process::class);
        }
 
        /**
@@ -218,10 +218,30 @@ abstract class DI
                return self::$dice->create(Core\Storage\Repository\StorageManager::class);
        }
 
+       /**
+        * @return \Friendica\Core\System
+        */
+       public static function system()
+       {
+               return self::$dice->create(Core\System::class);
+       }
+
        //
        // "LoggerInterface" instances
        //
 
+       /**
+        * Flushes the Logger instance, so the factory is called again
+        * (creates a new id and retrieves the current PID)
+        */
+       public static function flushLogger()
+       {
+               $flushDice = self::$dice
+                       ->addRule(LoggerInterface::class, self::$dice->getRule(LoggerInterface::class))
+                       ->addRule('$devLogger', self::$dice->getRule('$devLogger'));
+               static::init($flushDice);
+       }
+
        /**
         * @return LoggerInterface
         */
@@ -379,11 +399,11 @@ abstract class DI
        // "Model" namespace instances
        //
        /**
-        * @return Model\Process
+        * @return \Friendica\Core\Worker\Repository\Process
         */
        public static function modelProcess()
        {
-               return self::$dice->create(Model\Process::class);
+               return self::$dice->create(Core\Worker\Repository\Process::class);
        }
 
        /**
@@ -410,16 +430,25 @@ abstract class DI
                return self::$dice->create(Model\Log\ParsedLogIterator::class);
        }
 
+       //
+       // "Module" namespace
+       //
+
+       public static function apiResponse(): Module\Api\ApiResponse
+       {
+               return self::$dice->create(Module\Api\ApiResponse::class);
+       }
+
        //
        // "Network" namespace
        //
 
        /**
-        * @return Network\HTTPClient\Capability\ICanRequestPerHttp
+        * @return Network\HTTPClient\Capability\ICanSendHttpRequests
         */
        public static function httpClient()
        {
-               return self::$dice->create(Network\HTTPClient\Capability\ICanRequestPerHttp::class);
+               return self::$dice->create(Network\HTTPClient\Capability\ICanSendHttpRequests::class);
        }
 
        //