diff --git a/src/Model/Storage/ExternalResource.php b/src/Model/Storage/ExternalResource.php index 9c57e3990..8d1aded15 100644 --- a/src/Model/Storage/ExternalResource.php +++ b/src/Model/Storage/ExternalResource.php @@ -22,7 +22,7 @@ namespace Friendica\Model\Storage; use BadMethodCallException; -use Friendica\DI; +use Friendica\Network\IHTTPRequest; /** * External resource storage class @@ -34,6 +34,14 @@ class ExternalResource implements IStorage { const NAME = 'ExternalResource'; + /** @var IHTTPRequest */ + private $httpRequest; + + public function __construct(IHTTPRequest $httpRequest) + { + $this->httpRequest = $httpRequest; + } + /** * @inheritDoc */ @@ -44,7 +52,7 @@ class ExternalResource implements IStorage return ""; } - $curlResult = DI::httpRequest()->get($filename); + $curlResult = $this->httpRequest->get($filename); if ($curlResult->isSuccess()) { return $curlResult->getBody(); } else { diff --git a/src/Model/Storage/IStorage.php b/src/Model/Storage/IStorage.php index 8a9b60f73..0a0f58958 100644 --- a/src/Model/Storage/IStorage.php +++ b/src/Model/Storage/IStorage.php @@ -23,6 +23,8 @@ namespace Friendica\Model\Storage; /** * Interface for storage backends + * + * @todo Split this interface into "IStorage" for get() operations (including Resource fetching) and "IUserStorage" for real user backends including put/delete/options */ interface IStorage {