Browse Source

Merge pull request #12891 from nextcloud/theming-caching

more caching for theming
tags/v16.0.0alpha1
Roeland Jago Douma 5 years ago
parent
commit
2bbfeea659
No account linked to committer's email address
2 changed files with 14 additions and 3 deletions
  1. 13
    2
      lib/private/Template/IconsCacher.php
  2. 1
    1
      tests/lib/Template/IconsCacherTest.php

+ 13
- 2
lib/private/Template/IconsCacher.php View File

@@ -58,6 +58,9 @@ class IconsCacher {

private $iconList = 'icons-list.template';

private $cachedCss;
private $cachedList;

/**
* @param ILogger $logger
* @param Factory $appDataFactory
@@ -137,6 +140,8 @@ class IconsCacher {
$cachedVarsCssFile->putContent($data);
$list = ":root {\n$list\n}";
$cachedFile->putContent($list);
$this->cachedList = null;
$this->cachedCss = null;
}

return preg_replace($this->iconVarRE, '', $css);
@@ -204,7 +209,10 @@ class IconsCacher {
*/
public function getCachedCSS() {
try {
return $this->folder->getFile($this->fileName);
if (!$this->cachedCss) {
$this->cachedCss = $this->folder->getFile($this->fileName);
}
return $this->cachedCss;
} catch (NotFoundException $e) {
return false;
}
@@ -216,7 +224,10 @@ class IconsCacher {
*/
public function getCachedList() {
try {
return $this->folder->getFile($this->iconList);
if (!$this->cachedList) {
$this->cachedList = $this->folder->getFile($this->iconList);
}
return $this->cachedList;
} catch (NotFoundException $e) {
return false;
}

+ 1
- 1
tests/lib/Template/IconsCacherTest.php View File

@@ -144,7 +144,7 @@ class IconsCacherTest extends \Test\TestCase {
";

$iconsFile = $this->createMock(ISimpleFile::class);
$this->folder->expects($this->exactly(6))
$this->folder->expects($this->exactly(4))
->method('getFile')
->willReturn($iconsFile);


Loading…
Cancel
Save