@@ -17,30 +17,26 @@ public function __construct(GenericDB $db, ReflectionService $reflection)
1717 $ this ->reflection = $ reflection ;
1818 }
1919
20- public function updateTable (string $ tableName , /* object */ $ changes ): bool
20+ public function updateTable (ReflectedTable $ table , /* object */ $ changes ): bool
2121 {
22- $ table = $ this ->reflection ->getTable ($ tableName );
2322 $ 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 ())) {
2625 return false ;
2726 }
2827 }
2928 return true ;
3029 }
3130
32- public function updateColumn (string $ tableName , string $ columnName , /* object */ $ changes ): bool
31+ public function updateColumn (ReflectedTable $ table , ReflectedColumn $ column , /* object */ $ changes ): bool
3332 {
34- $ table = $ this ->reflection ->getTable ($ tableName );
35- $ column = $ table ->getColumn ($ columnName );
36-
3733 // remove constraints on other column
3834 $ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
3935 if ($ newColumn ->getPk () != $ column ->getPk () && $ table ->hasPk ()) {
4036 $ oldColumn = $ table ->getPk ();
41- if ($ oldColumn ->getName () != $ columnName ) {
37+ if ($ oldColumn ->getRealName () != $ column -> getRealName () ) {
4238 $ 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 )) {
4440 return false ;
4541 }
4642 }
@@ -49,12 +45,12 @@ public function updateColumn(string $tableName, string $columnName, /* object */
4945 // remove constraints
5046 $ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), ['pk ' => false , 'fk ' => false ]));
5147 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 )) {
5349 return false ;
5450 }
5551 }
5652 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 )) {
5854 return false ;
5955 }
6056 }
@@ -63,8 +59,8 @@ public function updateColumn(string $tableName, string $columnName, /* object */
6359 $ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
6460 $ newColumn ->setPk (false );
6561 $ 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 )) {
6864 return false ;
6965 }
7066 }
@@ -74,25 +70,25 @@ public function updateColumn(string $tableName, string $columnName, /* object */
7470 $ newColumn ->getPrecision () != $ column ->getPrecision () ||
7571 $ newColumn ->getScale () != $ column ->getScale ()
7672 ) {
77- if (!$ this ->db ->definition ()->retypeColumn ($ table ->getName (), $ newColumn ->getName (), $ newColumn )) {
73+ if (!$ this ->db ->definition ()->retypeColumn ($ table ->getRealName (), $ newColumn ->getRealName (), $ newColumn )) {
7874 return false ;
7975 }
8076 }
8177 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 )) {
8379 return false ;
8480 }
8581 }
8682
8783 // add constraints
8884 $ newColumn = ReflectedColumn::fromJson ((object ) array_merge ((array ) $ column ->jsonSerialize (), (array ) $ changes ));
8985 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 )) {
9187 return false ;
9288 }
9389 }
9490 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 )) {
9692 return false ;
9793 }
9894 }
@@ -108,50 +104,48 @@ public function addTable(/* object */$definition)
108104 return true ;
109105 }
110106
111- public function addColumn (string $ tableName , /* object */ $ definition )
107+ public function addColumn (ReflectedTable $ table , /* object */ $ definition )
112108 {
113109 $ newColumn = ReflectedColumn::fromJson ($ definition );
114- if (!$ this ->db ->definition ()->addColumn ($ tableName , $ newColumn )) {
110+ if (!$ this ->db ->definition ()->addColumn ($ table -> getRealName () , $ newColumn )) {
115111 return false ;
116112 }
117113 if ($ newColumn ->getFk ()) {
118- if (!$ this ->db ->definition ()->addColumnForeignKey ($ tableName , $ newColumn ->getName (), $ newColumn )) {
114+ if (!$ this ->db ->definition ()->addColumnForeignKey ($ table -> getRealName () , $ newColumn ->getRealName (), $ newColumn )) {
119115 return false ;
120116 }
121117 }
122118 if ($ newColumn ->getPk ()) {
123- if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ tableName , $ newColumn ->getName (), $ newColumn )) {
119+ if (!$ this ->db ->definition ()->addColumnPrimaryKey ($ table -> getRealName () , $ newColumn ->getRealName (), $ newColumn )) {
124120 return false ;
125121 }
126122 }
127123 return true ;
128124 }
129125
130- public function removeTable (string $ tableName )
126+ public function removeTable (ReflectedTable $ table )
131127 {
132- if (!$ this ->db ->definition ()->removeTable ($ tableName )) {
128+ if (!$ this ->db ->definition ()->removeTable ($ table -> getRealName () )) {
133129 return false ;
134130 }
135131 return true ;
136132 }
137133
138- public function removeColumn (string $ tableName , string $ columnName )
134+ public function removeColumn (ReflectedTable $ table , ReflectedColumn $ column )
139135 {
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 )) {
145139 return false ;
146140 }
147141 }
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 )) {
151145 return false ;
152146 }
153147 }
154- if (!$ this ->db ->definition ()->removeColumn ($ tableName , $ columnName )) {
148+ if (!$ this ->db ->definition ()->removeColumn ($ table -> getRealName () , $ column -> getRealName () )) {
155149 return false ;
156150 }
157151 return true ;
0 commit comments