public function retrieve(EntityRetrieverCriteria $criteria)
 {
     $container = $criteria->getContainerName();
     $uuid = $criteria->getUuid();
     $keyname = $criteria->getKeyname();
     $keynames = $criteria->getKeynames();
     $uri = $this->createRetrievalUri($container, $uuid, $keyname, $keynames);
     return $this->retrieveSingle($uri, $container);
 }
 public function retrieve(EntityRetrieverCriteria $criteria)
 {
     try {
         $containerName = $criteria->getContainerName();
         $query = $this->createQuery($criteria, $containerName);
         $data = $this->retrieveSingleFromQuery($query);
         if (empty($data)) {
             return null;
         }
         return $this->addContainerToData($data, $containerName);
     } catch (EntityException $exception) {
         throw new EntityRepositoryException('There was an exception while converting data to an Entity object.', $exception);
     }
 }