Caching implementation for objects

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8745 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
dragan-dan 2011-08-10 17:47:59 +00:00
parent 1b47a294d3
commit 70a69ff4fe
18 changed files with 709 additions and 322 deletions

View file

@ -182,11 +182,21 @@
//columnList size zero... get full member info
if(!$GLOBALS['__member_info__'][$member_srl] || count($columnList) == 0) {
//if(true) {
$args->member_srl = $member_srl;
$output = executeQuery('member.getMemberInfoByMemberSrl', $args, $columnList);
if(!$output->data) return;
$this->arrangeMemberInfo($output->data, $site_srl);
$oCacheHandler = &CacheHandler::getInstance('object');
if($oCacheHandler->isSupport()){
$cache_key = 'object:'.$member_srl;
$output = $oCacheHandler->get($cache_key);
}
if(!$output){
$args->member_srl = $member_srl;
$output = executeQuery('member.getMemberInfoByMemberSrl', $args, $columnList);
if(!$output->data) return;
//insert in cache
if($oCacheHandler->isSupport()) $oCacheHandler->put($cache_key,$output);
}
$this->arrangeMemberInfo($output->data, $site_srl);
}
return $GLOBALS['__member_info__'][$member_srl];