setName($name); $this->setColumns($column); $this->setReferenceTable($referenceTable); $this->setReferenceColumn($referenceColumn); (!$onDeleteRule) ?: $this->setOnDeleteRule($onDeleteRule); (!$onUpdateRule) ?: $this->setOnUpdateRule($onUpdateRule); } /** * @param string $name * @return self */ public function setName($name) { $this->name = $name; return $this; } /** * @return string */ public function getName() { return $this->name; } /** * @param string $referenceTable * @return self */ public function setReferenceTable($referenceTable) { $this->referenceTable = $referenceTable; return $this; } /** * @return string */ public function getReferenceTable() { return $this->referenceTable; } /** * @param string $referenceColumn * @return self */ public function setReferenceColumn($referenceColumn) { $this->referenceColumn = $referenceColumn; return $this; } /** * @return string */ public function getReferenceColumn() { return $this->referenceColumn; } /** * @param string $onDeleteRule * @return self */ public function setOnDeleteRule($onDeleteRule) { $this->onDeleteRule = $onDeleteRule; return $this; } /** * @return string */ public function getOnDeleteRule() { return $this->onDeleteRule; } /** * @param string $onUpdateRule * @return self */ public function setOnUpdateRule($onUpdateRule) { $this->onUpdateRule = $onUpdateRule; return $this; } /** * @return string */ public function getOnUpdateRule() { return $this->onUpdateRule; } /** * @return array */ public function getExpressionData() { return array(array( $this->specification, array( $this->name, $this->columns[0], $this->referenceTable, $this->referenceColumn, $this->onDeleteRule, $this->onUpdateRule, ), array( self::TYPE_IDENTIFIER, self::TYPE_IDENTIFIER, self::TYPE_IDENTIFIER, self::TYPE_IDENTIFIER, self::TYPE_LITERAL, self::TYPE_LITERAL, ), )); } }