]> git.mxchange.org Git - friendica.git/blobdiff - src/DI.php
Merge remote-tracking branch 'upstream/develop' into conversation-moved
[friendica.git] / src / DI.php
index d8e51b439822fcd9ca242ba59085e6f8318c02f8..ed67efe0034ceadaf0ac9c63fb5275899746ae9d 100644 (file)
@@ -39,6 +39,17 @@ abstract class DI
                self::$dice = $dice;
        }
 
+       /**
+        * Returns a clone of the current dice instance
+        * This usefull for overloading the current instance with mocked methods during tests
+        *
+        * @return Dice
+        */
+       public static function getDice()
+       {
+               return clone self::$dice;
+       }
+
        //
        // common instances
        //
@@ -123,6 +134,14 @@ abstract class DI
                return self::$dice->create(Content\Item::class);
        }
 
+       /**
+        * @return Content\Conversation
+        */
+       public static function conversation()
+       {
+               return self::$dice->create(Content\Conversation::class);
+       }
+
        /**
         * @return Content\Text\BBCode\Video
         */
@@ -311,6 +330,22 @@ abstract class DI
                return self::$dice->create(Factory\Api\Mastodon\Status::class);
        }
 
+       /**
+        * @return Factory\Api\Mastodon\ScheduledStatus
+        */
+       public static function mstdnScheduledStatus()
+       {
+               return self::$dice->create(Factory\Api\Mastodon\ScheduledStatus::class);
+       }
+
+       /**
+        * @return Factory\Api\Mastodon\Subscription
+        */
+       public static function mstdnSubscription()
+       {
+               return self::$dice->create(Factory\Api\Mastodon\Subscription::class);
+       }
+
        /**
         * @return Factory\Api\Mastodon\ListEntity
         */
@@ -371,11 +406,19 @@ abstract class DI
        }
 
        /**
-        * @return Model\Storage\IStorage
+        * @return Model\Storage\IWritableStorage
         */
        public static function storage()
        {
-               return self::$dice->create(Model\Storage\IStorage::class);
+               return self::$dice->create(Model\Storage\IWritableStorage::class);
+       }
+
+       /**
+        * @return Model\Log\ParsedLogIterator
+        */
+       public static function parsedLogIterator()
+       {
+               return self::$dice->create(Model\Log\ParsedLogIterator::class);
        }
 
        //
@@ -383,11 +426,11 @@ abstract class DI
        //
 
        /**
-        * @return Network\IHTTPRequest
+        * @return Network\IHTTPClient
         */
-       public static function httpRequest()
+       public static function httpClient()
        {
-               return self::$dice->create(Network\IHTTPRequest::class);
+               return self::$dice->create(Network\IHTTPClient::class);
        }
 
        //