use of org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.
the class ConfigurationMetadataDescriptor method patch.
private Metadata patch(Metadata metadata) {
try {
if (metadata instanceof MetadataImpl) {
MetadataImpl metadataImpl = (MetadataImpl) metadata;
Field entityBindingMapField = metadataImpl.getClass().getDeclaredField("entityBindingMap");
if (entityBindingMapField != null) {
entityBindingMapField.setAccessible(true);
Object object = entityBindingMapField.get(metadataImpl);
if (object instanceof HashMap<?, ?>) {
@SuppressWarnings("unchecked") HashMap<String, PersistentClass> map = (HashMap<String, PersistentClass>) object;
for (IPersistentClass ipc : ((ConfigurationFacadeImpl) this.configurationFacade).getAddedClasses()) {
PersistentClass pc = (PersistentClass) ((IFacade) ipc).getTarget();
map.put(pc.getEntityName(), pc);
}
}
}
}
return metadata;
} catch (Throwable t) {
throw new RuntimeException("Problem while creating metadata", t);
}
}
use of org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.
the class ConfigurationFacadeTest method testSetEntityResolver.
@Test
public void testSetEntityResolver() {
EntityResolver testResolver = new DefaultHandler();
ConfigurationFacadeImpl facade = (ConfigurationFacadeImpl) configurationFacade;
assertNull(facade.entityResolver);
configurationFacade.setEntityResolver(testResolver);
assertSame(testResolver, facade.entityResolver);
}
use of org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.
the class ConfigurationFacadeTest method testAddClass.
@Test
public void testAddClass() {
PersistentClass persistentClass = new RootClass(DummyMetadataBuildingContext.INSTANCE);
persistentClass.setEntityName("Foo");
IPersistentClass persistentClassFacade = FACADE_FACTORY.createPersistentClass(persistentClass);
assertFalse(((ConfigurationFacadeImpl) configurationFacade).addedClasses.contains(persistentClassFacade));
configurationFacade.addClass(persistentClassFacade);
assertTrue(((ConfigurationFacadeImpl) configurationFacade).addedClasses.contains(persistentClassFacade));
}
use of org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.
the class ConfigurationFacadeTest method testGetClassMapping.
@Test
public void testGetClassMapping() {
PersistentClass persistentClass = new RootClass(DummyMetadataBuildingContext.INSTANCE);
persistentClass.setEntityName("Foo");
IPersistentClass persistentClassFacade = FACADE_FACTORY.createPersistentClass(persistentClass);
configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configuration);
assertNull(configurationFacade.getClassMapping("Foo"));
configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configuration);
((ConfigurationFacadeImpl) configurationFacade).addedClasses.add(persistentClassFacade);
assertSame(configurationFacade.getClassMapping("Foo"), persistentClassFacade);
}
use of org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.
the class ConfigurationFacadeTest method testReadFromJDBC.
@Test
public void testReadFromJDBC() throws Exception {
Connection connection = DriverManager.getConnection("jdbc:h2:mem:test");
Statement statement = connection.createStatement();
statement.execute("CREATE TABLE FOO(id int primary key, bar varchar(255))");
JdbcMetadataConfiguration jdbcMdCfg = new JdbcMetadataConfiguration();
jdbcMdCfg.setProperty("hibernate.connection.url", "jdbc:h2:mem:test");
configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, jdbcMdCfg);
Metadata metadata = jdbcMdCfg.getMetadata();
assertNull(metadata);
jdbcMdCfg = new JdbcMetadataConfiguration();
jdbcMdCfg.setProperty("hibernate.connection.url", "jdbc:h2:mem:test");
configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, jdbcMdCfg);
configurationFacade.readFromJDBC();
metadata = jdbcMdCfg.getMetadata();
Iterator<PersistentClass> iterator = metadata.getEntityBindings().iterator();
PersistentClass persistentClass = iterator.next();
assertEquals("Foo", persistentClass.getClassName());
statement.execute("DROP TABLE FOO");
statement.close();
connection.close();
}
Aggregations