/** * Initializes a new <tt>DocumentRepository</tt>. * * @param DocumentManager $dm The DocumentManager to use. * @param ClassMetadata $classMetadata The class descriptor. */ public function __construct($dm, Mapping\ClassMetadata $class) { $this->_documentName = $class->name; $this->_dm = $dm; $this->_unitOfWork = $this->_dm->getUnitOfWork(); $this->_hydrator = $this->_dm->getHydrator(); $this->_collection = $this->_dm->getDocumentCollection($class->name); $this->_class = $class; }
/** * Find a single document with the given query and select fields. * * @param string $documentName The document to find. * @param array $query The query criteria. * @param array $select The fields to select * @return object $document */ public function findOne(array $query = array(), array $select = array()) { return $this->_dm->getUnitOfWork()->getDocumentPersister($this->_documentName)->load($query, $select); }
/** * Finds a single document by a set of criteria. * * @param array $criteria * @return object */ public function findOneBy(array $criteria) { return $this->dm->getUnitOfWork()->getDocumentPersister($this->documentName)->load($criteria); }