At the end of the day, the point of this enhancement request is to better encapsulate {{SchemaManagementTool}} such that OMG etal can really truly replace that service. This is a multi-faceted request.
The main consideration is the {{org.hibernate.tool.schema.spi.Target}} contract as it is passed to the individual delegates of the {{SchemaManagementTool}}. {{Target}} assumes that schema management commands are representable as Strings as they are in RDBMS/JDBC environment. For OGM however that is often not the case. To cater for that, {{Target}} should no longer be passed into the {{SchemaManagementTool}} delegates. Instead, the {{SchemaManagementTool}} implementation or its delegates should interpret any config and decide itself what to do. In that sense, {{Target}} would become an internal detail within the standard ORM {{SchemaManagementTool}} implementation.
Part of solution to this main consideration involves unifying the |
|