use of org.hibernate.tool.api.reveng.RevengStrategy in project jbosstools-hibernate by jbosstools.
the class OverrideRepositoryFacadeTest method testGetReverseEngineeringStrategy.
@Test
public void testGetReverseEngineeringStrategy() throws Exception {
RevengStrategy res = new DefaultStrategy();
IReverseEngineeringStrategy resFacade = FACADE_FACTORY.createReverseEngineeringStrategy(res);
IReverseEngineeringStrategy result = overrideRepositoryFacade.getReverseEngineeringStrategy(resFacade);
DelegatingStrategy resultTarget = (DelegatingStrategy) ((IFacade) result).getTarget();
Field delegateField = DelegatingStrategy.class.getDeclaredField("delegate");
delegateField.setAccessible(true);
assertSame(res, delegateField.get(resultTarget));
}
use of org.hibernate.tool.api.reveng.RevengStrategy in project jbosstools-hibernate by jbosstools.
the class ReverseEngineeringStrategyFacadeTest method testSetSettings.
@Test
public void testSetSettings() throws Exception {
RevengStrategy revengStrategyTarget = new DefaultStrategy();
RevengSettings revengSettingsTarget = new RevengSettings(revengStrategyTarget);
IReverseEngineeringSettings revengSettingsFacade = FACADE_FACTORY.createReverseEngineeringSettings(revengSettingsTarget);
IReverseEngineeringStrategy revengStrategyFacade = new ReverseEngineeringStrategyFacadeImpl(FACADE_FACTORY, revengStrategyTarget);
Field field = AbstractStrategy.class.getDeclaredField("settings");
field.setAccessible(true);
assertNotSame(field.get(revengStrategyTarget), revengSettingsTarget);
revengStrategyFacade.setSettings(revengSettingsFacade);
assertSame(field.get(revengStrategyTarget), revengSettingsTarget);
}
use of org.hibernate.tool.api.reveng.RevengStrategy in project jbosstools-hibernate by jbosstools.
the class ServiceImpl method newReverseEngineeringStrategy.
@Override
public IReverseEngineeringStrategy newReverseEngineeringStrategy(String strategyName, IReverseEngineeringStrategy delegate) {
RevengStrategy delegateTarget = (RevengStrategy) ((IFacade) delegate).getTarget();
Object target = newReverseEngineeringStrategy(strategyName, delegateTarget);
return facadeFactory.createReverseEngineeringStrategy(target);
}
use of org.hibernate.tool.api.reveng.RevengStrategy in project jbosstools-hibernate by jbosstools.
the class ServiceImpl method collectDatabaseTables.
@Override
public Map<String, List<ITable>> collectDatabaseTables(Properties properties, IReverseEngineeringStrategy strategy, final IProgressListener progressListener) {
StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(properties).build();
MetadataBuildingOptionsImpl metadataBuildingOptions = new MetadataBuildingOptionsImpl(serviceRegistry);
BootstrapContextImpl bootstrapContext = new BootstrapContextImpl(serviceRegistry, metadataBuildingOptions);
metadataBuildingOptions.setBootstrapContext(bootstrapContext);
InFlightMetadataCollectorImpl metadataCollector = new InFlightMetadataCollectorImpl(bootstrapContext, metadataBuildingOptions);
RevengDialect mdd = RevengDialectFactory.createMetaDataDialect(serviceRegistry.getService(JdbcServices.class).getDialect(), properties);
RevengStrategy revengStrategy = (RevengStrategy) ((IFacade) strategy).getTarget();
DatabaseReader reader = DatabaseReader.create(properties, revengStrategy, mdd, serviceRegistry);
MetadataBuildingContext metadataBuildingContext = new MetadataBuildingContextRootImpl("JBoss Tools", bootstrapContext, metadataBuildingOptions, metadataCollector);
RevengMetadataCollector revengMetadataCollector = new RevengMetadataCollector(metadataBuildingContext);
reader.readDatabaseSchema(revengMetadataCollector);
Map<String, List<ITable>> result = new HashMap<String, List<ITable>>();
for (Table table : revengMetadataCollector.getTables()) {
String qualifier = "";
if (table.getCatalog() != null) {
qualifier += table.getCatalog();
}
if (table.getSchema() != null) {
if (!"".equals(qualifier)) {
qualifier += ".";
}
qualifier += table.getSchema();
}
List<ITable> list = result.get(qualifier);
if (list == null) {
list = new ArrayList<ITable>();
result.put(qualifier, list);
}
list.add(facadeFactory.createTable(table));
}
return result;
}
use of org.hibernate.tool.api.reveng.RevengStrategy in project jbosstools-hibernate by jbosstools.
the class JdbcMetadataConfigurationTest method testSetReverseEngineeringStrategy.
@Test
public void testSetReverseEngineeringStrategy() {
RevengStrategy strategy = new DefaultStrategy();
assertNull(jdbcMetadataConfiguration.revengStrategy);
jdbcMetadataConfiguration.setReverseEngineeringStrategy(strategy);
assertSame(strategy, jdbcMetadataConfiguration.revengStrategy);
}
Aggregations