Esempio n. 1
0
 /**
  * Add a link to the scheme
  *
  * @param One_Relation_Adapter $link
  */
 public function addLink(One_Relation_Adapter $link)
 {
     $this->_links[$link->getName()] = $link;
     $this->_linksById[$link->getLinkId()] = $link;
     if ($link->getAdapterType() instanceof One_Relation_Adapter_Manytoone) {
         if (null !== $link->getForeignKey()) {
             $this->_foreignKeys[] = $link->getForeignKey();
         }
     }
 }
Esempio n. 2
0
 /**
  * Saves all "many-to-many" and "one-to-many"-relations
  *
  * @param One_Relation_Adapter $link
  * @return void
  */
 public function saveRelated(One_Relation_Adapter $link)
 {
     if (array_key_exists($link->getName(), $this->_modifiedRelations) && $link->getAdapterType() != "manytoone") {
         $link->save($this);
     }
     if (array_key_exists($link->getName(), $this->_addedRelations) && $link->getAdapterType() != "manytoone") {
         $link->add($this);
     }
     if (array_key_exists($link->getName(), $this->_deletedRelations) && $link->getAdapterType() != "manytoone") {
         $link->remove($this);
     }
 }