diff options
-rw-r--r-- | lib/private/OCS/DiscoveryService.php | 15 | ||||
-rw-r--r-- | lib/public/OCS/IDiscoveryService.php | 3 |
2 files changed, 11 insertions, 7 deletions
diff --git a/lib/private/OCS/DiscoveryService.php b/lib/private/OCS/DiscoveryService.php index 016331e908f..6662263fb76 100644 --- a/lib/private/OCS/DiscoveryService.php +++ b/lib/private/OCS/DiscoveryService.php @@ -59,15 +59,18 @@ class DiscoveryService implements IDiscoveryService { * * @param string $remote * @param string $service the service you want to discover + * @param bool $skipCache We won't check if the data is in the cache. This is usefull if a background job is updating the status * @return array */ - public function discover(string $remote, string $service): array { + public function discover(string $remote, string $service, bool $skipCache = false): array { // Check the cache first - $cacheData = $this->cache->get($remote . '#' . $service); - if($cacheData) { - $data = json_decode($cacheData, true); - if (\is_array($data)) { - return $data; + if ($skipCache === false) { + $cacheData = $this->cache->get($remote . '#' . $service); + if ($cacheData) { + $data = json_decode($cacheData, true); + if (\is_array($data)) { + return $data; + } } } diff --git a/lib/public/OCS/IDiscoveryService.php b/lib/public/OCS/IDiscoveryService.php index 9a86e2a4410..704840cf7b5 100644 --- a/lib/public/OCS/IDiscoveryService.php +++ b/lib/public/OCS/IDiscoveryService.php @@ -44,8 +44,9 @@ interface IDiscoveryService { * * @param string $remote * @param string $service the service you want to discover + * @param bool $skipCache We won't check if the data is in the cache. This is usefull if a background job is updating the status * @return array */ - public function discover(string $remote, string $service): array; + public function discover(string $remote, string $service, bool $skipCache = false): array; } |