public function find(DataRequest $dataRequest)
    {
        try {
            $dataRequest->setSelectedFields(array('*'));
            
            $queryBuilder = $this->entityManager->getQueryBuilder();
            $this->entityManager->buildDataRequestQuery($dataRequest, $queryBuilder, $this->getEntityClass(), 'e');
            
            $entities = $queryBuilder->getQuery()->getResult();
            if ($entities == null) {
                return array();
            }
            
            return $entities;
        } catch (\Exception $e) {
            throw new Exception('Cannot load the entities for the given data request.', 0, $e);
        }
    }