public function toArray() { if (!$this->referencedTable) { throw new Mesour\Sources\InvalidStateException('Referenced table is required. Use method setReferencedTable.'); } if (!$this->selfColumn) { throw new Mesour\Sources\InvalidStateException('Self column is required. Use method setReferencedTable.'); } return array_merge(parent::toArray(), ['referencedTable' => $this->referencedTable, 'selfColumn' => $this->selfColumn]); }