public function listGroups($user) { // Check list cache. if (($list = $this->_getListCache($user)) !== null) { return $list; } // Retrieve all groups. $list = $this->_listGroups($user); // Update list cache. $this->_setListCache($list, $user); return $list; }