memoize Notice::whoGets()

This commit is contained in:
Evan Prodromou 2010-01-13 00:16:54 -08:00
parent f05ae1f210
commit 3d579fc580

View File

@ -828,6 +828,15 @@ class Notice extends Memcached_DataObject
function whoGets() function whoGets()
{ {
$c = self::memcache();
if (!empty($c)) {
$ni = $c->get(common_cache_key('notice:who_gets:'.$this->id));
if ($ni !== false) {
return $ni;
}
}
$users = $this->getSubscribedUsers(); $users = $this->getSubscribedUsers();
// FIXME: kind of ignoring 'transitional'... // FIXME: kind of ignoring 'transitional'...
@ -867,6 +876,11 @@ class Notice extends Memcached_DataObject
} }
} }
if (!empty($c)) {
// XXX: pack this data better
$c->set(common_cache_key('notice:who_gets:'.$this->id), $ni);
}
return $ni; return $ni;
} }