@@ -88,6 +88,7 @@ public class SQLDatabaseConnectionImpl extends PooledSQLDatabaseConnection {
8888 private transient Logger logger ;
8989 @ Getter (onMethod_ = {@ Nullable , @ ApiStatus .Experimental })
9090 private transient Transaction transaction ;
91+ private transient SchemaSynchronizer <SQLDatabaseConnection > schemaSynchronizer ;
9192 private int errorCount = 0 ;
9293
9394 /**
@@ -114,8 +115,9 @@ public SQLDatabaseConnectionImpl(final @NotNull SQLConnectionFactory connectionF
114115 this .errorStateHandlers = new CopyOnWriteArrayList <>();
115116 this .transaction = null ;
116117 this .logger = Logger .getGlobal ();
117- this .mappingRegistry = new MappingRegistryImpl (this , new SQLSchemaSynchronizer () );
118+ this .mappingRegistry = new MappingRegistryImpl (this );
118119
120+ setSchemaSynchronizer (new SQLSchemaSynchronizer ());
119121 enableCaching (CacheManager .noCache ());
120122
121123 // Default backup value resolvers.
@@ -205,7 +207,8 @@ public boolean synchronizeModel() {
205207 @ ApiStatus .Experimental
206208 @ Override
207209 public boolean synchronizeModel (TableSchema entitySchema , String table ) {
208- return getSchemaSynchronizer ().synchronize (this , entitySchema , getSchemaBuilder (table ).buildTableSchema ()).isSuccessful ();
210+ return getSchemaSynchronizer ().synchronize (this , entitySchema ,
211+ getSchemaBuilder (table ).buildTableSchema ()).isSuccessful ();
209212 }
210213
211214 /**
@@ -221,7 +224,9 @@ public boolean synchronizeModel(TableSchema entitySchema, String table) {
221224 @ ApiStatus .Experimental
222225 @ Override
223226 public boolean synchronizeModel (Class <?> entity , String table ) {
224- return synchronizeModel (new EntitySchemaBuilder (table , entity , getOptions ().getNamingStrategy (), this instanceof SQLiteDatabaseConnectionImpl ).buildTableSchema (), table );
227+ return synchronizeModel (new EntitySchemaBuilder (table , entity ,
228+ getOptions ().getNamingStrategy (),
229+ this instanceof SQLiteDatabaseConnectionImpl ).buildTableSchema (), table );
225230 }
226231
227232 /**
@@ -232,13 +237,13 @@ public boolean synchronizeModel(Class<?> entity, String table) {
232237 @ ApiStatus .Experimental
233238 @ Override
234239 public void setSchemaSynchronizer (SchemaSynchronizer <SQLDatabaseConnection > synchronizer ) {
235- mappingRegistry . setSynchronizer ( synchronizer ) ;
240+ this . schemaSynchronizer = synchronizer ;
236241 }
237242
238243 @ ApiStatus .Experimental
239244 @ Override
240245 public SchemaSynchronizer <SQLDatabaseConnection > getSchemaSynchronizer () {
241- return mappingRegistry . getSynchronizer () ;
246+ return schemaSynchronizer ;
242247 }
243248
244249 @ ApiStatus .Experimental
0 commit comments