protected function makeChildClassesAggregateRoot(ClassSchema $classSchema)
    {
        foreach ($this->getAllSubClassNamesForClass($classSchema->getClassName()) as $childClassName) {
            if (!isset($this->classSchemata[$childClassName]) || $this->classSchemata[$childClassName]->isAggregateRoot()) {
                continue;
            }

            $this->classSchemata[$childClassName]->setRepositoryClassName($classSchema->getRepositoryClassName());
            $this->makeChildClassesAggregateRoot($this->classSchemata[$childClassName]);
        }
    }
protected function makeChildClassesAggregateRoot(ClassSchema $classSchema)
    {
        foreach ($this->getAllSubClassNamesForClass($classSchema->getClassName()) as $childClassName) {
            if (!isset($this->classSchemata[$childClassName]) || $this->classSchemata[$childClassName]->isAggregateRoot()) {
                continue;
            }

            $this->classSchemata[$childClassName]->setRepositoryClassName($classSchema->getRepositoryClassName());
            $this->makeChildClassesAggregateRoot($this->classSchemata[$childClassName]);
        }
    }
protected function makeChildClassesAggregateRoot ( ClassSchema $ classSchema ) { foreach ( $ this -> getAllSubClassNamesForClass ( $ classSchema -> getClassName ( ) ) as $ childClassName ) { if ( ! isset ( $ this -> classSchemata [ $ childClassName ] ) || $ this -> classSchemata [ $ childClassName ] -> isAggregateRoot ( ) ) { continue ; } $ this -> classSchemata [ $ childClassName ] -> setRepositoryClassName ( $ classSchema -> getRepositoryClassName ( ) ) ; $ this -> makeChildClassesAggregateRoot ( $ this -> classSchemata [ $ childClassName ] ) ; } }
Assigns the repository of any aggregate root to all it's
subclasses, unless they are aggregate root already.

@param ClassSchema $classSchema
@return void
Assigns the repository of any aggregate root to all it s subclasses unless they are aggregate root already .