protected function calculateCacheKey()
{
$key = $this->getBaseCacheKey();
if ($this->_varyBySession) {
$key .= $this->getSession()->getSessionID();
}
if ($this->_varyByParam !== '') {
$params = array();
$request = $this->getRequest();
foreach (explode(',', $this->_varyByParam) as $name) {
$name = trim($name);
$params[$name] = $request->itemAt($name);
}
$key .= serialize($params);
}
$param = new TOutputCacheCalculateKeyEventParameter();
$this->onCalculateKey($param);
$key .= $param->getCacheKey();
return $key;
}