Doctrine\ODM\CouchDB\UnitOfWork::cascadeRefresh PHP Метод

cascadeRefresh() приватный Метод

private cascadeRefresh ( $document, &$visited )
    private function cascadeRefresh($document, &$visited)
    {
        $class = $this->dm->getClassMetadata(get_class($document));
        foreach ($class->associationsMappings as $assoc) {
            if ($assoc['cascade'] & ClassMetadata::CASCADE_REFRESH) {
                $related = $class->reflFields[$assoc['fieldName']]->getValue($document);
                if ($related instanceof Collection) {
                    if ($related instanceof PersistentCollection) {
                        // Unwrap so that foreach() does not initialize
                        $related = $related->unwrap();
                    }
                    foreach ($related as $relatedDocument) {
                        $this->doRefresh($relatedDocument, $visited);
                    }
                } else {
                    if ($related !== null) {
                        $this->doRefresh($related, $visited);
                    }
                }
            }
        }
    }