diff options
author | MaZderMind | 2015-04-01 21:03:51 +0200 |
---|---|---|
committer | MaZderMind | 2015-04-01 21:03:51 +0200 |
commit | b468a665f5b642578f51fc4031ac36e6f359c680 (patch) | |
tree | 43d0f681bde41dad840e07aeb2c86177cd728753 | |
parent | 759184ba0519acfa7d695e44c2af6c2d2a27794e (diff) |
Use URL as Part of the Cache-Key
-rw-r--r-- | model/Relive.php | 16 | ||||
-rw-r--r-- | model/Schedule.php | 9 |
2 files changed, 20 insertions, 5 deletions
diff --git a/model/Relive.php b/model/Relive.php index a76761c..3a8b15b 100644 --- a/model/Relive.php +++ b/model/Relive.php @@ -8,12 +8,17 @@ class Relive extends ModelBase return $this->has('CONFERENCE.RELIVE_JSON'); } + public function getJsonUrl() + { + return $this->get('CONFERENCE.RELIVE_JSON'); + } + public function getTalks() { if($talks_by_id = $this->getCached()) return $talks_by_id; - $talks = file_get_contents($this->get('CONFERENCE.RELIVE_JSON')); + $talks = file_get_contents($this->getJsonUrl()); $talks = utf8_decode($talks); $talks = (array)json_decode($talks, true); @@ -64,7 +69,7 @@ class Relive extends ModelBase if(!$this->isCacheEnabled()) return null; - return apc_fetch('RELIVE.CACHE'); + return apc_fetch($this->getCacheKey()); } private function doCache($value) @@ -74,7 +79,12 @@ class Relive extends ModelBase if(!$this->isCacheEnabled()) return $value; - apc_store('RELIVE.CACHE', $value, $this->getCacheDuration()); + apc_store($this->getCacheKey(), $value, $this->getCacheDuration()); return $value; } + + private function getCacheKey() + { + return 'RELIVE.'.$this->getJsonUrl(); + } } diff --git a/model/Schedule.php b/model/Schedule.php index db93c4d..86fb111 100644 --- a/model/Schedule.php +++ b/model/Schedule.php @@ -232,7 +232,7 @@ class Schedule extends ModelBase if(!$this->isCacheEnabled()) return null; - return apc_fetch('SCHEDULE.CACHE'); + return apc_fetch($this->getCacheKey()); } private function doCache($value) @@ -242,10 +242,15 @@ class Schedule extends ModelBase if(!$this->isCacheEnabled()) return $value; - apc_store('SCHEDULE.CACHE', $value, $this->getCacheDuration()); + apc_store($this->getCacheKey(), $value, $this->getCacheDuration()); return $value; } + private function getCacheKey() + { + return 'SCHEDULE.'.$this->getScheduleUrl(); + } + private function getScheduleToRoomSlugMapping() { $mapping = array(); |