示例#1
0
 /**
  * Adds the attributes used to store objects that have referrer fkey relationships to this object.
  * <code>protected collVarName;</code>
  * <code>private lastVarNameCriteria = null;</code>
  * @param      string &$script The script will be modified in this method.
  */
 protected function addRefFKAttributes(&$script, ForeignKey $refFK)
 {
     $joinedTableObjectBuilder = $this->getNewObjectBuilder($refFK->getTable());
     $className = $joinedTableObjectBuilder->getObjectClassname();
     if ($refFK->isLocalPrimaryKey()) {
         $script .= "\n    /**\n     * @var        {$className} one-to-one related {$className} object\n     */\n    protected \$" . $this->getPKRefFKVarName($refFK) . ";\n";
     } else {
         $script .= "\n    /**\n     * @var        array {$className}[] Collection to store aggregation of {$className} objects.\n     */\n    protected \$" . $this->getRefFKCollVarName($refFK) . ";\n";
     }
 }
示例#2
0
 /**
  * Adds the attributes used to store objects that have referrer fkey relationships to this object.
  * <code>protected collVarName;</code>
  * <code>private lastVarNameCriteria = null;</code>
  * @param string     &$script The script will be modified in this method.
  * @param ForeignKey $refFK
  */
 protected function addRefFKAttributes(&$script, ForeignKey $refFK)
 {
     $className = $this->getClassNameFromTable($refFK->getTable());
     if ($refFK->isLocalPrimaryKey()) {
         $script .= "\n    /**\n     * @var        {$className} one-to-one related {$className} object\n     */\n    protected \$" . $this->getPKRefFKVarName($refFK) . ";\n";
     } else {
         $script .= "\n    /**\n     * @var        ObjectCollection|{$className}[] Collection to store aggregation of {$className} objects.\n     */\n    protected \$" . $this->getRefFKCollVarName($refFK) . ";\n    protected \$" . $this->getRefFKCollVarName($refFK) . "Partial;\n";
     }
 }
示例#3
0
 public function testForeignKeyIsLocalPrimaryKey()
 {
     $pks = [$this->getColumnMock('book_id'), $this->getColumnMock('author_id')];
     $table = $this->getTableMock('books');
     $table->expects($this->once())->method('getPrimaryKey')->will($this->returnValue($pks));
     $fk = new ForeignKey();
     $fk->setTable($table);
     $fk->addReference('book_id', 'id');
     $fk->addReference('author_id', 'id');
     $this->assertTrue($fk->isLocalPrimaryKey());
 }