diff options
author | Julius Härtl <jus@bitgrid.net> | 2017-09-12 09:09:45 +0200 |
---|---|---|
committer | Julius Härtl <jus@bitgrid.net> | 2017-09-12 09:28:22 +0200 |
commit | 8391ca8792dace13ba4cf5ebd43d9ea0931b7b2a (patch) | |
tree | d3126dfe3cfbfe76c21d5fa1b29ed1289f207aba /apps/theming | |
parent | 699c64c7504ecd1518827e031eac202da1dcd228 (diff) | |
download | nextcloud-server-8391ca8792dace13ba4cf5ebd43d9ea0931b7b2a.tar.gz nextcloud-server-8391ca8792dace13ba4cf5ebd43d9ea0931b7b2a.zip |
Use IAppManager instead of private API
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'apps/theming')
-rw-r--r-- | apps/theming/lib/ThemingDefaults.php | 24 | ||||
-rw-r--r-- | apps/theming/tests/ThemingDefaultsTest.php | 7 |
2 files changed, 23 insertions, 8 deletions
diff --git a/apps/theming/lib/ThemingDefaults.php b/apps/theming/lib/ThemingDefaults.php index 0a9d5a6cc1f..5dd22fb6326 100644 --- a/apps/theming/lib/ThemingDefaults.php +++ b/apps/theming/lib/ThemingDefaults.php @@ -23,6 +23,8 @@ namespace OCA\Theming; +use OCP\App\AppPathNotFoundException; +use OCP\App\IAppManager; use OCP\Files\IAppData; use OCP\ICacheFactory; use OCP\IConfig; @@ -41,6 +43,10 @@ class ThemingDefaults extends \OC_Defaults { private $appData; /** @var ICacheFactory */ private $cacheFactory; + /** @var Util */ + private $util; + /** @var IAppManager */ + private $appManager; /** @var string */ private $name; /** @var string */ @@ -49,8 +55,7 @@ class ThemingDefaults extends \OC_Defaults { private $slogan; /** @var string */ private $color; - /** @var Util */ - private $util; + /** @var string */ private $iTunesAppId; /** @var string */ @@ -68,13 +73,15 @@ class ThemingDefaults extends \OC_Defaults { * @param IAppData $appData * @param ICacheFactory $cacheFactory * @param Util $util + * @param IAppManager $appManager */ public function __construct(IConfig $config, IL10N $l, IURLGenerator $urlGenerator, IAppData $appData, ICacheFactory $cacheFactory, - Util $util + Util $util, + IAppManager $appManager ) { parent::__construct(); $this->config = $config; @@ -83,6 +90,7 @@ class ThemingDefaults extends \OC_Defaults { $this->appData = $appData; $this->cacheFactory = $cacheFactory; $this->util = $util; + $this->appManager = $appManager; $this->name = parent::getName(); $this->url = parent::getBaseUrl(); @@ -269,10 +277,12 @@ class ThemingDefaults extends \OC_Defaults { return $this->urlGenerator->linkToRoute('theming.Icon.getTouchIcon', ['app' => $app]) . '?v=' . $cacheBusterValue; } if ($image === 'manifest.json') { - $appPath = \OC_App::getAppPath($app); - if ($appPath && file_exists($appPath . '/img/manifest.json')) { - return false; - } + try { + $appPath = $this->appManager->getAppPath($app); + if (file_exists($appPath . '/img/manifest.json')) { + return false; + } + } catch (AppPathNotFoundException $e) {} return $this->urlGenerator->linkToRoute('theming.Theming.getManifest') . '?v=' . $cacheBusterValue; } return false; diff --git a/apps/theming/tests/ThemingDefaultsTest.php b/apps/theming/tests/ThemingDefaultsTest.php index 48099e8be0f..b1d86bff432 100644 --- a/apps/theming/tests/ThemingDefaultsTest.php +++ b/apps/theming/tests/ThemingDefaultsTest.php @@ -24,6 +24,7 @@ namespace OCA\Theming\Tests; use OCA\Theming\ThemingDefaults; +use OCP\App\IAppManager; use OCP\Files\IAppData; use OCA\Theming\Util; use OCP\Files\NotFoundException; @@ -55,6 +56,8 @@ class ThemingDefaultsTest extends TestCase { private $util; /** @var ICache|\PHPUnit_Framework_MockObject_MockObject */ private $cache; + /** @var IAppManager|\PHPUnit_Framework_MockObject_MockObject */ + private $appManager; public function setUp() { parent::setUp(); @@ -65,6 +68,7 @@ class ThemingDefaultsTest extends TestCase { $this->cacheFactory = $this->createMock(ICacheFactory::class); $this->cache = $this->createMock(ICache::class); $this->util = $this->createMock(Util::class); + $this->appManager = $this->createMock(IAppManager::class); $this->defaults = new \OC_Defaults(); $this->cacheFactory ->expects($this->any()) @@ -77,7 +81,8 @@ class ThemingDefaultsTest extends TestCase { $this->urlGenerator, $this->appData, $this->cacheFactory, - $this->util + $this->util, + $this->appManager ); } |