public function executeQueryForMap($connection, $parameter, $keyProperty, $valueProperty = null, $skip = -1, $max = -1, $delegate = null)
{
$sql = $this->createCommand($connection, $parameter, $skip, $max);
$key = $this->getCacheKey(array(clone $sql, $keyProperty, $valueProperty, $skip, $max));
$map = $this->getStatement()->getCache()->get($key);
if ($map === null) {
$map = $this->_mappedStatement->runQueryForMap($connection, $parameter, $sql, $keyProperty, $valueProperty, $delegate);
$this->getStatement()->getCache()->set($key, $map);
}
return $map;
}