TableMigrationCodeGenerator
extends BaseModel
in package
Generates migration code for creating, updates and deleting tables.
Tags
Table of Contents
- COLUMN_MODE_CHANGE = 'change'
- COLUMN_MODE_CREATE = 'create'
- COLUMN_MODE_REVERT = 'revert'
- $exists : bool
- $eol : mixed
- $fillable : mixed
- $indent : mixed
- $pluginCodeObj : PluginCode
- $updatedData : mixed
- $validationMessages : mixed
- $validationRules : mixed
- createOrUpdateTable() : string|bool
- Generates code for creating or updating a database table.
- dropTable() : string
- Generates code for dropping a database table.
- fill() : mixed
- getModelPluginName() : mixed
- getPluginCodeObj() : mixed
- isNewModel() : mixed
- setPluginCode() : mixed
- Sets a string code of a plugin the model is associated with
- setPluginCodeObj() : mixed
- Sets a code object of a plugin the model is associated with
- validate() : mixed
- wrapMigrationCode() : Bracket
- Wrap migration's up() and down() functions into a complete migration class declaration
- applyMethodIncrements() : mixed
- findPrimaryKeyIndex() : mixed
- formatLengthParameters() : mixed
- generateBooleanMethod() : mixed
- generateBooleanString() : mixed
- generateColumnCode() : mixed
- generateColumnDrop() : mixed
- generateColumnMethodCall() : mixed
- generateColumnRemoveCode() : mixed
- generateColumnRenameCode() : mixed
- generateCreateOrUpdateCode() : mixed
- generateCreateOrUpdateDownCode() : mixed
- generateCreateOrUpdateUpCode() : mixed
- generateDefault() : mixed
- generateDefaultMethodCall() : mixed
- generateDropDownCode() : mixed
- generateDropUpCode() : mixed
- generateIndexDrop() : mixed
- generateMigrationCode() : mixed
- generateNullable() : mixed
- generatePrimaryKeyCode() : mixed
- generatePrimaryKeyDrop() : mixed
- generateSchemaTableMethodEnd() : mixed
- generateSchemaTableMethodStart() : mixed
- generateTableDropCode() : mixed
- generateTableRenameCode() : mixed
- generateUnsigned() : mixed
- getChangedOrRemovedPrimaryKey() : mixed
- implodeColumnList() : mixed
- indent() : mixed
- indexHasAutoincrementColumns() : mixed
- makeTabs() : mixed
- quoteParameter() : mixed
- tableHasNameOrColumnChanges() : mixed
- tableHasPrimaryKeyChanges() : mixed
- validateBeforeCreate() : mixed
Constants
COLUMN_MODE_CHANGE
public
mixed
COLUMN_MODE_CHANGE
= 'change'
COLUMN_MODE_CREATE
public
mixed
COLUMN_MODE_CREATE
= 'create'
COLUMN_MODE_REVERT
public
mixed
COLUMN_MODE_REVERT
= 'revert'
Properties
$exists
public
bool
$exists
= false
This property is used by the system internally.
$eol
protected
mixed
$eol
= PHP_EOL
$fillable
protected
static mixed
$fillable
= []
$indent
protected
mixed
$indent
= ' '
$pluginCodeObj
protected
PluginCode
$pluginCodeObj
= null
The plugin code object the model is associated with.
$updatedData
protected
mixed
$updatedData
= []
$validationMessages
protected
mixed
$validationMessages
= []
$validationRules
protected
mixed
$validationRules
= []
Methods
createOrUpdateTable()
Generates code for creating or updating a database table.
public
createOrUpdateTable(Table $updatedTable, Table $existingTable, string $newTableName) : string|bool
Parameters
- $updatedTable : Table
-
Specifies the updated table schema.
- $existingTable : Table
-
Specifies the existing table schema, if applicable.
- $newTableName : string
-
An updated name of the theme.
Return values
string|bool —Returns the migration up() and down() methods code. Returns false if there the table was not changed.
dropTable()
Generates code for dropping a database table.
public
dropTable(Table $existingTable) : string
Parameters
- $existingTable : Table
-
Specifies the existing table schema.
Return values
string —Returns the migration up() and down() methods code.
fill()
public
fill(array<string|int, mixed> $attributes) : mixed
Parameters
- $attributes : array<string|int, mixed>
Return values
mixed —getModelPluginName()
public
getModelPluginName() : mixed
Return values
mixed —getPluginCodeObj()
public
getPluginCodeObj() : mixed
Return values
mixed —isNewModel()
public
isNewModel() : mixed
Return values
mixed —setPluginCode()
Sets a string code of a plugin the model is associated with
public
setPluginCode(string $code) : mixed
Parameters
- $code : string
-
Specifies the plugin code
Return values
mixed —setPluginCodeObj()
Sets a code object of a plugin the model is associated with
public
setPluginCodeObj(PluginCode $obj) : mixed
Parameters
- $obj : PluginCode
-
Specifies the plugin code object
Return values
mixed —validate()
public
validate() : mixed
Return values
mixed —wrapMigrationCode()
Wrap migration's up() and down() functions into a complete migration class declaration
public
wrapMigrationCode(string $scriptFilename, string $code, PluginCode $pluginCodeObj) : Bracket
Parameters
- $scriptFilename : string
-
Specifies the migration script file name
- $code : string
-
Specifies the migration code
- $pluginCodeObj : PluginCode
-
The plugin code object
Return values
Bracket —applyMethodIncrements()
protected
applyMethodIncrements(mixed $method, mixed $column) : mixed
Parameters
- $method : mixed
- $column : mixed
Return values
mixed —findPrimaryKeyIndex()
protected
findPrimaryKeyIndex(mixed $indexes, mixed $table) : mixed
Parameters
- $indexes : mixed
- $table : mixed
Return values
mixed —formatLengthParameters()
protected
formatLengthParameters(mixed $column, mixed $method) : mixed
Parameters
- $column : mixed
- $method : mixed
Return values
mixed —generateBooleanMethod()
protected
generateBooleanMethod(mixed $methodName, mixed $value) : mixed
Parameters
- $methodName : mixed
- $value : mixed
Return values
mixed —generateBooleanString()
protected
generateBooleanString(mixed $value) : mixed
Parameters
- $value : mixed
Return values
mixed —generateColumnCode()
protected
generateColumnCode(mixed $columnData, mixed $mode) : mixed
Parameters
- $columnData : mixed
- $mode : mixed
Return values
mixed —generateColumnDrop()
protected
generateColumnDrop(mixed $column) : mixed
Parameters
- $column : mixed
Return values
mixed —generateColumnMethodCall()
protected
generateColumnMethodCall(mixed $column) : mixed
Parameters
- $column : mixed
Return values
mixed —generateColumnRemoveCode()
protected
generateColumnRemoveCode(mixed $name) : mixed
Parameters
- $name : mixed
Return values
mixed —generateColumnRenameCode()
protected
generateColumnRenameCode(mixed $fromName, mixed $toName) : mixed
Parameters
- $fromName : mixed
- $toName : mixed
Return values
mixed —generateCreateOrUpdateCode()
protected
generateCreateOrUpdateCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
- $tableDiff : mixed
- $isNewTable : mixed
- $newOrUpdatedTable : mixed
Return values
mixed —generateCreateOrUpdateDownCode()
protected
generateCreateOrUpdateDownCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
- $tableDiff : mixed
- $isNewTable : mixed
- $newOrUpdatedTable : mixed
Return values
mixed —generateCreateOrUpdateUpCode()
protected
generateCreateOrUpdateUpCode(mixed $tableDiff, mixed $isNewTable, mixed $newOrUpdatedTable) : mixed
Parameters
- $tableDiff : mixed
- $isNewTable : mixed
- $newOrUpdatedTable : mixed
Return values
mixed —generateDefault()
protected
generateDefault(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
- $column : mixed
- $changeMode : mixed
- $columnData : mixed
- $forceFlagsChange : mixed
Return values
mixed —generateDefaultMethodCall()
protected
generateDefaultMethodCall(mixed $default, mixed $column) : mixed
Parameters
- $default : mixed
- $column : mixed
Return values
mixed —generateDropDownCode()
protected
generateDropDownCode(mixed $table) : mixed
Parameters
- $table : mixed
Return values
mixed —generateDropUpCode()
protected
generateDropUpCode(mixed $table) : mixed
Parameters
- $table : mixed
Return values
mixed —generateIndexDrop()
protected
generateIndexDrop(mixed $index) : mixed
Parameters
- $index : mixed
Return values
mixed —generateMigrationCode()
protected
generateMigrationCode(mixed $upCode, mixed $downCode) : mixed
Parameters
- $upCode : mixed
- $downCode : mixed
Return values
mixed —generateNullable()
protected
generateNullable(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
- $column : mixed
- $changeMode : mixed
- $columnData : mixed
- $forceFlagsChange : mixed
Return values
mixed —generatePrimaryKeyCode()
protected
generatePrimaryKeyCode(mixed $index) : mixed
Parameters
- $index : mixed
Return values
mixed —generatePrimaryKeyDrop()
protected
generatePrimaryKeyDrop(mixed $table) : mixed
Parameters
- $table : mixed
Return values
mixed —generateSchemaTableMethodEnd()
protected
generateSchemaTableMethodEnd() : mixed
Return values
mixed —generateSchemaTableMethodStart()
protected
generateSchemaTableMethodStart(mixed $tableName, mixed $isNewTable) : mixed
Parameters
- $tableName : mixed
- $isNewTable : mixed
Return values
mixed —generateTableDropCode()
protected
generateTableDropCode(mixed $name) : mixed
Parameters
- $name : mixed
Return values
mixed —generateTableRenameCode()
protected
generateTableRenameCode(mixed $fromName, mixed $toName) : mixed
Parameters
- $fromName : mixed
- $toName : mixed
Return values
mixed —generateUnsigned()
protected
generateUnsigned(mixed $column, mixed $changeMode, mixed $columnData, mixed $forceFlagsChange) : mixed
Parameters
- $column : mixed
- $changeMode : mixed
- $columnData : mixed
- $forceFlagsChange : mixed
Return values
mixed —getChangedOrRemovedPrimaryKey()
protected
getChangedOrRemovedPrimaryKey(mixed $tableDiff) : mixed
Parameters
- $tableDiff : mixed
Return values
mixed —implodeColumnList()
protected
implodeColumnList(mixed $columnNames) : mixed
Parameters
- $columnNames : mixed
Return values
mixed —indent()
protected
indent(mixed $str) : mixed
Parameters
- $str : mixed
Return values
mixed —indexHasAutoincrementColumns()
protected
indexHasAutoincrementColumns(mixed $index, mixed $table) : mixed
Parameters
- $index : mixed
- $table : mixed
Return values
mixed —makeTabs()
protected
makeTabs(mixed $str) : mixed
Parameters
- $str : mixed
Return values
mixed —quoteParameter()
protected
quoteParameter(mixed $str) : mixed
Parameters
- $str : mixed
Return values
mixed —tableHasNameOrColumnChanges()
protected
tableHasNameOrColumnChanges(mixed $tableDiff[, mixed $columnChangesOnly = false ]) : mixed
Parameters
- $tableDiff : mixed
- $columnChangesOnly : mixed = false
Return values
mixed —tableHasPrimaryKeyChanges()
protected
tableHasPrimaryKeyChanges(mixed $tableDiff) : mixed
Parameters
- $tableDiff : mixed
Return values
mixed —validateBeforeCreate()
protected
validateBeforeCreate() : mixed