/**
* @access private
*
* Maps a given object request to the relational equivalent.
*
* @param IRequest $ObjectRequest The object request
* @return Relational\Request The equivalent relational request
*/
public final function MapRequest(Object\IRequest $ObjectRequest)
{
$EntityRelationalMap = $this->VerifyEntityTypeIsMapped($ObjectRequest->GetEntityType());
$RelationalRequest = new Relational\Request([], $EntityRelationalMap->GetCriterion());
$this->MapPropetiesToRelationalRequest($EntityRelationalMap, $RelationalRequest, $ObjectRequest->GetProperties());
$this->MapCriterion($EntityRelationalMap, $ObjectRequest->GetCriterion(), $RelationalRequest->GetCriterion());
return $RelationalRequest;
}