From 22e2168f8aecb9e6171a40d4f4260f09ee0cb03b Mon Sep 17 00:00:00 2001 From: Rico Kaltofen Date: Thu, 22 Mar 2018 17:14:49 +0100 Subject: [PATCH] restored FilterManager caching --- src/Manager/FilterManager.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Manager/FilterManager.php b/src/Manager/FilterManager.php index f1fd8da..56559c2 100644 --- a/src/Manager/FilterManager.php +++ b/src/Manager/FilterManager.php @@ -29,6 +29,14 @@ class FilterManager */ protected $session; + + /** + * All available filter configurations cache + * + * @var FilterConfig[] + */ + protected $filters; + /** * Constructor. * @@ -81,6 +89,10 @@ public function getSessionKey(array $filter) */ public function findById(int $id) { + if (isset($this->filters[$id])) { + return $this->filters[$id]; + } + /** * @var FilterConfigModel */ @@ -90,9 +102,9 @@ public function findById(int $id) return null; } - $config = $this->getConfig($filter->row()); + $this->filters[$id] = $this->getConfig($filter->row()); - return $config ?: null; + return isset($this->filters[$id]) ? $this->filters[$id] : null; } /**