|
|
|
|
@ -125,19 +125,19 @@ abstract class Fetcher { |
|
|
|
|
$file = $rootFolder->getFile($this->fileName); |
|
|
|
|
$jsonBlob = json_decode($file->getContent(), true); |
|
|
|
|
if (is_array($jsonBlob)) { |
|
|
|
|
/* |
|
|
|
|
* If the timestamp is older than 300 seconds request the files new |
|
|
|
|
* If the version changed (update!) also refresh |
|
|
|
|
*/ |
|
|
|
|
if ((int)$jsonBlob['timestamp'] > ($this->timeFactory->getTime() - self::INVALIDATE_AFTER_SECONDS) && |
|
|
|
|
isset($jsonBlob['ncversion']) && $jsonBlob['ncversion'] === $this->config->getSystemValue('version', '0.0.0') |
|
|
|
|
) { |
|
|
|
|
return $jsonBlob['data']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($jsonBlob['ETag'])) { |
|
|
|
|
$ETag = $jsonBlob['ETag']; |
|
|
|
|
$content = json_encode($jsonBlob['data']); |
|
|
|
|
// No caching when the version has been updated |
|
|
|
|
if (isset($jsonBlob['ncversion']) && $jsonBlob['ncversion'] === $this->config->getSystemValue('version', '0.0.0')) { |
|
|
|
|
|
|
|
|
|
// If the timestamp is older than 300 seconds request the files new |
|
|
|
|
if ((int)$jsonBlob['timestamp'] > ($this->timeFactory->getTime() - self::INVALIDATE_AFTER_SECONDS)) { |
|
|
|
|
return $jsonBlob['data']; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($jsonBlob['ETag'])) { |
|
|
|
|
$ETag = $jsonBlob['ETag']; |
|
|
|
|
$content = json_encode($jsonBlob['data']); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} catch (NotFoundException $e) { |
|
|
|
|
|