@@ -17,30 +17,26 @@ public function __construct(GenericDB $db, ReflectionService $reflection)
17
17
$ this ->reflection = $ reflection ;
18
18
}
19
19
20
- public function updateTable (string $ tableName , /* object */ $ changes ): bool
20
+ public function updateTable (ReflectedTable $ table , /* object */ $ changes ): bool
21
21
{
22
- $ table = $ this ->reflection ->getTable ($ tableName );
23
22
$ newTable = ReflectedTable::fromJson ((object ) array_merge ((array ) $ table ->jsonSerialize (), (array ) $ changes ));
24
- if ($ table ->getName () != $ newTable ->getName ()) {
25
- if (!$ this ->db ->definition ()->renameTable ($ table ->getName (), $ newTable ->getName ())) {
23
+ if ($ table ->getRealName () != $ newTable ->getRealName ()) {
24
+ if (!$ this ->db ->definition ()->renameTable ($ table ->getRealName (), $ newTable ->getRealName ())) {
26
25
return false ;
27
26
}
28
27
}
29
28
return true ;
30
29
}
31
30
32
- public function updateColumn (string $ tableName , string $ columnName , /* object */ $ changes ): bool
31
+ public function updateColumn (ReflectedTable $ table , ReflectedColumn $ column , /* object */ $ changes ): bool
33
32
{
34
- $ table = $ this ->reflection ->getTable ($ tableName );
35
- $ column = $ table ->getColumn ($ columnName );
36
-
37
33
// remove constraints on other column
38
34
$ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
39
35
if ($ newColumn ->getPk () != $ column ->getPk () && $ table ->hasPk ()) {
40
36
$ oldColumn = $ table ->getPk ();
41
- if ($ oldColumn ->getName () != $ columnName ) {
37
+ if ($ oldColumn ->getRealName () != $ column -> getRealName () ) {
42
38
$ oldColumn ->setPk (false );
43
- if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getName (), $ oldColumn ->getName (), $ oldColumn )) {
39
+ if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getRealName (), $ oldColumn ->getRealName (), $ oldColumn )) {
44
40
return false ;
45
41
}
46
42
}
@@ -49,12 +45,12 @@ public function updateColumn(string $tableName, string $columnName, /* object */
49
45
// remove constraints
50
46
$ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), ['pk ' => false , 'fk ' => false ]));
51
47
if ($ newColumn ->getPk () != $ column ->getPk () && !$ newColumn ->getPk ()) {
52
- if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getName (), $ column ->getName (), $ newColumn )) {
48
+ if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getRealName (), $ column ->getRealName (), $ newColumn )) {
53
49
return false ;
54
50
}
55
51
}
56
52
if ($ newColumn ->getFk () != $ column ->getFk () && !$ newColumn ->getFk ()) {
57
- if (!$ this ->db ->definition ()->removeColumnForeignKey ($ table ->getName (), $ column ->getName (), $ newColumn )) {
53
+ if (!$ this ->db ->definition ()->removeColumnForeignKey ($ table ->getRealName (), $ column ->getRealName (), $ newColumn )) {
58
54
return false ;
59
55
}
60
56
}
@@ -63,8 +59,8 @@ public function updateColumn(string $tableName, string $columnName, /* object */
63
59
$ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
64
60
$ newColumn ->setPk (false );
65
61
$ newColumn ->setFk ('' );
66
- if ($ newColumn ->getName () != $ column ->getName ()) {
67
- if (!$ this ->db ->definition ()->renameColumn ($ table ->getName (), $ column ->getName (), $ newColumn )) {
62
+ if ($ newColumn ->getRealName () != $ column ->getRealName ()) {
63
+ if (!$ this ->db ->definition ()->renameColumn ($ table ->getRealName (), $ column ->getRealName (), $ newColumn )) {
68
64
return false ;
69
65
}
70
66
}
@@ -74,25 +70,25 @@ public function updateColumn(string $tableName, string $columnName, /* object */
74
70
$ newColumn ->getPrecision () != $ column ->getPrecision () ||
75
71
$ newColumn ->getScale () != $ column ->getScale ()
76
72
) {
77
- if (!$ this ->db ->definition ()->retypeColumn ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
73
+ if (!$ this ->db ->definition ()->retypeColumn ($ table ->getRealName (), $ newColumn ->getRealName (), $ newColumn )) {
78
74
return false ;
79
75
}
80
76
}
81
77
if ($ newColumn ->getNullable () != $ column ->getNullable ()) {
82
- if (!$ this ->db ->definition ()->setColumnNullable ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
78
+ if (!$ this ->db ->definition ()->setColumnNullable ($ table ->getRealName (), $ newColumn ->getRealName (), $ newColumn )) {
83
79
return false ;
84
80
}
85
81
}
86
82
87
83
// add constraints
88
84
$ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
89
85
if ($ newColumn ->getFk ()) {
90
- if (!$ this ->db ->definition ()->addColumnForeignKey ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
86
+ if (!$ this ->db ->definition ()->addColumnForeignKey ($ table ->getRealName (), $ newColumn ->getRealName (), $ newColumn )) {
91
87
return false ;
92
88
}
93
89
}
94
90
if ($ newColumn ->getPk ()) {
95
- if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
91
+ if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ table ->getRealName (), $ newColumn ->getRealName (), $ newColumn )) {
96
92
return false ;
97
93
}
98
94
}
@@ -108,50 +104,48 @@ public function addTable(/* object */$definition)
108
104
return true ;
109
105
}
110
106
111
- public function addColumn (string $ tableName , /* object */ $ definition )
107
+ public function addColumn (ReflectedTable $ table , /* object */ $ definition )
112
108
{
113
109
$ newColumn = ReflectedColumn::fromJson ($ definition );
114
- if (!$ this ->db ->definition ()->addColumn ($ tableName , $ newColumn )) {
110
+ if (!$ this ->db ->definition ()->addColumn ($ table -> getRealName () , $ newColumn )) {
115
111
return false ;
116
112
}
117
113
if ($ newColumn ->getFk ()) {
118
- if (!$ this ->db ->definition ()->addColumnForeignKey ($ tableName , $ newColumn ->getName (), $ newColumn )) {
114
+ if (!$ this ->db ->definition ()->addColumnForeignKey ($ table -> getRealName () , $ newColumn ->getRealName (), $ newColumn )) {
119
115
return false ;
120
116
}
121
117
}
122
118
if ($ newColumn ->getPk ()) {
123
- if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ tableName , $ newColumn ->getName (), $ newColumn )) {
119
+ if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ table -> getRealName () , $ newColumn ->getRealName (), $ newColumn )) {
124
120
return false ;
125
121
}
126
122
}
127
123
return true ;
128
124
}
129
125
130
- public function removeTable (string $ tableName )
126
+ public function removeTable (ReflectedTable $ table )
131
127
{
132
- if (!$ this ->db ->definition ()->removeTable ($ tableName )) {
128
+ if (!$ this ->db ->definition ()->removeTable ($ table -> getRealName () )) {
133
129
return false ;
134
130
}
135
131
return true ;
136
132
}
137
133
138
- public function removeColumn (string $ tableName , string $ columnName )
134
+ public function removeColumn (ReflectedTable $ table , ReflectedColumn $ column )
139
135
{
140
- $ table = $ this ->reflection ->getTable ($ tableName );
141
- $ newColumn = $ table ->getColumn ($ columnName );
142
- if ($ newColumn ->getPk ()) {
143
- $ newColumn ->setPk (false );
144
- if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
136
+ if ($ column ->getPk ()) {
137
+ $ column ->setPk (false );
138
+ if (!$ this ->db ->definition ()->removeColumnPrimaryKey ($ table ->getRealName (), $ column ->getRealName (), $ column )) {
145
139
return false ;
146
140
}
147
141
}
148
- if ($ newColumn ->getFk ()) {
149
- $ newColumn ->setFk ("" );
150
- if (!$ this ->db ->definition ()->removeColumnForeignKey ($ tableName , $ columnName , $ newColumn )) {
142
+ if ($ column ->getFk ()) {
143
+ $ column ->setFk ("" );
144
+ if (!$ this ->db ->definition ()->removeColumnForeignKey ($ table -> getRealName () , $ column -> getRealName () , $ column )) {
151
145
return false ;
152
146
}
153
147
}
154
- if (!$ this ->db ->definition ()->removeColumn ($ tableName , $ columnName )) {
148
+ if (!$ this ->db ->definition ()->removeColumn ($ table -> getRealName () , $ column -> getRealName () )) {
155
149
return false ;
156
150
}
157
151
return true ;
0 commit comments