Пример #1
0
 /**
  * Creates tables for classes and relationship involved 
  * in the query path tree if they don't exist. 
  * @return boolean
  */
 public function prepareDbs()
 {
     $status = true;
     // make sure tables for the classes involved in the query are created
     if ($classes = $this->am->getAllClasses()) {
         foreach ($classes as $class) {
             if (!$this->proot->prepareDb($class)) {
                 $status = false;
             }
         }
     }
     // make sure all the child classes of the roots are created as well
     if ($classes = $this->getPrimaryClassMaps()) {
         foreach ($classes as $class) {
             if (!$this->proot->prepareDb($class->getName())) {
                 $status = false;
             }
         }
     }
     // make sure relationship tables are created as well
     if ($tables = $this->am->getAllTables()) {
         foreach ($tables as $table) {
             if (!$this->proot->prepareDb('epObjectRelation', $table)) {
                 $status = false;
             }
         }
     }
     return $status;
 }