Search in sources :

Example 11 with ConfigurationFacadeImpl

use of org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.

the class ConfigurationMetadataDescriptorTest method testCreateMetadata.

@Test
public void testCreateMetadata() {
    MetadataSources metadataSources = new MetadataSources();
    metadataSources.addInputStream(new ByteArrayInputStream(TEST_HBM_XML_STRING.getBytes()));
    Configuration configuration = new Configuration(metadataSources);
    configuration.setProperty(AvailableSettings.DIALECT, MockDialect.class.getName());
    configuration.setProperty(AvailableSettings.CONNECTION_PROVIDER, MockConnectionProvider.class.getName());
    configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configuration);
    PersistentClass persistentClass = new RootClass(null);
    persistentClass.setEntityName("Bar");
    IPersistentClass persistentClassFacade = FACADE_FACTORY.createPersistentClass(persistentClass);
    configurationFacade.addClass(persistentClassFacade);
    configurationMetadataDescriptor = new ConfigurationMetadataDescriptor(configurationFacade);
    Metadata metadata = configurationMetadataDescriptor.createMetadata();
    assertNotNull(metadata.getEntityBinding(Foo.class.getName()));
    assertNotNull(metadata.getEntityBinding("Bar"));
}
Also used : RootClass(org.hibernate.mapping.RootClass) Configuration(org.hibernate.cfg.Configuration) ByteArrayInputStream(java.io.ByteArrayInputStream) MetadataSources(org.hibernate.boot.MetadataSources) Metadata(org.hibernate.boot.Metadata) ConfigurationFacadeImpl(org.jboss.tools.hibernate.runtime.v_5_6.internal.ConfigurationFacadeImpl) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) Test(org.junit.jupiter.api.Test)

Example 12 with ConfigurationFacadeImpl

use of org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.

the class ConfigurationMetadataDescriptorTest method beforeEach.

@BeforeEach
public void beforeEach() {
    configurationTarget = new Configuration();
    configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configurationTarget);
    configurationMetadataDescriptor = new ConfigurationMetadataDescriptor(configurationFacade);
}
Also used : Configuration(org.hibernate.cfg.Configuration) ConfigurationFacadeImpl(org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl) BeforeEach(org.junit.jupiter.api.BeforeEach)

Example 13 with ConfigurationFacadeImpl

use of org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.

the class ConfigurationMetadataDescriptorTest method testCreateMetadata.

@Test
public void testCreateMetadata() {
    MetadataSources metadataSources = new MetadataSources();
    metadataSources.addInputStream(new ByteArrayInputStream(TEST_HBM_XML_STRING.getBytes()));
    Configuration configuration = new Configuration(metadataSources);
    configuration.setProperty(AvailableSettings.DIALECT, MockDialect.class.getName());
    configuration.setProperty(AvailableSettings.CONNECTION_PROVIDER, MockConnectionProvider.class.getName());
    configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configuration);
    PersistentClass persistentClass = new RootClass(null);
    persistentClass.setEntityName("Bar");
    IPersistentClass persistentClassFacade = FACADE_FACTORY.createPersistentClass(persistentClass);
    configurationFacade.addClass(persistentClassFacade);
    configurationMetadataDescriptor = new ConfigurationMetadataDescriptor(configurationFacade);
    Metadata metadata = configurationMetadataDescriptor.createMetadata();
    assertNotNull(metadata.getEntityBinding(Foo.class.getName()));
    assertNotNull(metadata.getEntityBinding("Bar"));
}
Also used : RootClass(org.hibernate.mapping.RootClass) Configuration(org.hibernate.cfg.Configuration) ByteArrayInputStream(java.io.ByteArrayInputStream) MetadataSources(org.hibernate.boot.MetadataSources) Metadata(org.hibernate.boot.Metadata) ConfigurationFacadeImpl(org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) Test(org.junit.jupiter.api.Test)

Example 14 with ConfigurationFacadeImpl

use of org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl in project jbosstools-hibernate by jbosstools.

the class ConfigurationMetadataDescriptorTest method testCreateMetadata.

@Test
public void testCreateMetadata() {
    MetadataSources metadataSources = new MetadataSources();
    metadataSources.addInputStream(new ByteArrayInputStream(TEST_HBM_XML_STRING.getBytes()));
    Configuration configuration = new Configuration(metadataSources);
    configuration.setProperty(AvailableSettings.DIALECT, MockDialect.class.getName());
    configuration.setProperty(AvailableSettings.CONNECTION_PROVIDER, MockConnectionProvider.class.getName());
    configurationFacade = new ConfigurationFacadeImpl(FACADE_FACTORY, configuration);
    PersistentClass persistentClass = new RootClass(DummyMetadataBuildingContext.INSTANCE);
    persistentClass.setEntityName("Bar");
    IPersistentClass persistentClassFacade = FACADE_FACTORY.createPersistentClass(persistentClass);
    configurationFacade.addClass(persistentClassFacade);
    configurationMetadataDescriptor = new ConfigurationMetadataDescriptor(configurationFacade);
    Metadata metadata = configurationMetadataDescriptor.createMetadata();
    assertNotNull(metadata.getEntityBinding(Foo.class.getName()));
    assertNotNull(metadata.getEntityBinding("Bar"));
}
Also used : RootClass(org.hibernate.mapping.RootClass) Configuration(org.hibernate.cfg.Configuration) ByteArrayInputStream(java.io.ByteArrayInputStream) MetadataSources(org.hibernate.boot.MetadataSources) Metadata(org.hibernate.boot.Metadata) ConfigurationFacadeImpl(org.jboss.tools.hibernate.runtime.v_6_0.internal.ConfigurationFacadeImpl) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) Test(org.junit.jupiter.api.Test)

Example 15 with ConfigurationFacadeImpl

use of org.jboss.tools.hibernate.runtime.v_5_4.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.configuration).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);
    }
}
Also used : Field(java.lang.reflect.Field) MetadataImpl(org.hibernate.boot.internal.MetadataImpl) HashMap(java.util.HashMap) ConfigurationFacadeImpl(org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass)

Aggregations

Configuration (org.hibernate.cfg.Configuration)13 Test (org.junit.jupiter.api.Test)12 PersistentClass (org.hibernate.mapping.PersistentClass)10 IPersistentClass (org.jboss.tools.hibernate.runtime.spi.IPersistentClass)10 Metadata (org.hibernate.boot.Metadata)7 Field (java.lang.reflect.Field)6 BeforeEach (org.junit.jupiter.api.BeforeEach)6 ByteArrayInputStream (java.io.ByteArrayInputStream)5 MetadataSources (org.hibernate.boot.MetadataSources)5 RootClass (org.hibernate.mapping.RootClass)5 JdbcMetadataConfiguration (org.jboss.tools.hibernate.runtime.v_5_4.internal.util.JdbcMetadataConfiguration)5 HashMap (java.util.HashMap)4 MetadataImpl (org.hibernate.boot.internal.MetadataImpl)4 ConfigurationFacadeImpl (org.jboss.tools.hibernate.runtime.v_5_3.internal.ConfigurationFacadeImpl)3 ConfigurationFacadeImpl (org.jboss.tools.hibernate.runtime.v_5_4.internal.ConfigurationFacadeImpl)3 MockConnectionProvider (org.jboss.tools.hibernate.runtime.v_5_4.internal.util.MockConnectionProvider)3 MockDialect (org.jboss.tools.hibernate.runtime.v_5_4.internal.util.MockDialect)3 ConfigurationFacadeImpl (org.jboss.tools.hibernate.runtime.v_5_5.internal.ConfigurationFacadeImpl)3 ConfigurationFacadeImpl (org.jboss.tools.hibernate.runtime.v_5_6.internal.ConfigurationFacadeImpl)3 Connection (java.sql.Connection)2