protected function setTableData(ZfObject\AbstractTableObject $table, array $data) { $columns = []; foreach ($data['columns'] as $col) { $c = new Object\ColumnObject($col['name'], $col['tableName'], $col['schemaName']); $c->setType($col['type']); $c->setOrdinalPosition($col['ordinalPosition']); $c->setColumnDefault($col['columnDefault']); $c->setIsNullable($col['isNullable']); $c->setDataType($col['dataType']); $c->setCharacterMaximumLength($col['characterMaximumLength']); $c->setCharacterOctetLength($col['characterOctetLength']); $c->setNumericPrecision($col['numericPrecision']); $c->setNumericUnsigned($col['numericUnsigned']); $c->setErratas($col['errata']); $columns[$col['name']] = $c; } $table->setColumns($columns); $constraints = []; foreach ($data['constraints'] as $cons) { $c = new ZfObject\ConstraintObject($cons['name'], $cons['tableName'], $cons['schemaName']); $c->setType($cons['type']); $c->setColumns($cons['columns']); $c->setReferencedTableSchema($cons['referencedTableSchema']); $c->setReferencedTableName($cons['referencedTableName']); $c->setReferencedColumns($cons['referencedColumns']); $c->setMatchOption($cons['matchOption']); $c->setUpdateRule($cons['updateRule']); $c->setDeleteRule($cons['deleteRule']); $c->setCheckClause($cons['checkClause']); $constraints[] = $c; } $table->setConstraints($constraints); }