public function executeQueryForList($connection, $parameter, $result = null, $skip = -1, $max = -1, $delegate = null)
{
$sql = $this->createCommand($connection, $parameter, $skip, $max);
$key = $this->getCacheKey(array(clone $sql, $parameter, $skip, $max));
$list = $this->getStatement()->getCache()->get($key);
if ($list === null) {
$list = $this->_mappedStatement->runQueryForList($connection, $parameter, $sql, $result, $delegate);
$this->getStatement()->getCache()->set($key, $list);
}
return $list;
}