Search in sources :

Example 31 with RootClass

use of org.hibernate.mapping.RootClass in project jbosstools-hibernate by jbosstools.

the class Cfg2HbmToolFacadeTest method testGetPersistentClassTag.

@Test
public void testGetPersistentClassTag() {
    PersistentClass target = new RootClass();
    IPersistentClass persistentClass = new AbstractPersistentClassFacade(FACADE_FACTORY, target) {
    };
    Assert.assertEquals("class", cfg2HbmToolFacade.getTag(persistentClass));
}
Also used : RootClass(org.hibernate.mapping.RootClass) AbstractPersistentClassFacade(org.jboss.tools.hibernate.runtime.common.AbstractPersistentClassFacade) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) Test(org.junit.Test)

Example 32 with RootClass

use of org.hibernate.mapping.RootClass in project jbosstools-hibernate by jbosstools.

the class HibernateMappingExporterFacadeTest method testStart.

@Test
public void testStart() throws Exception {
    Configuration configuration = new Configuration();
    RootClass persistentClass = new RootClass();
    Table table = new Table("FOO");
    persistentClass.setClassName("Foo");
    persistentClass.setEntityName("Foo");
    persistentClass.setTable(table);
    Mappings mappings = configuration.createMappings();
    mappings.addClass(persistentClass);
    hibernateMappingExporter.setConfiguration(configuration);
    hibernateMappingExporter.setOutputDirectory(outputDir);
    final File fooHbmXml = new File(outputDir, "Foo.hbm.xml");
    // First without a 'delegate' exporter
    Assert.assertFalse(fooHbmXml.exists());
    hibernateMappingExporterFacade.start();
    Assert.assertTrue(fooHbmXml.exists());
    Assert.assertTrue(fooHbmXml.delete());
    // Now set a 'delegate' and invoke 'start' again
    final File dummyDir = new File(outputDir, "dummy");
    dummyDir.mkdir();
    Assert.assertTrue(dummyDir.exists());
    IExportPOJODelegate delegate = new IExportPOJODelegate() {

        @Override
        public void exportPOJO(Map<Object, Object> map, IPOJOClass pojoClass) {
            Assert.assertTrue(dummyDir.delete());
            hibernateMappingExporter.superExportPOJO(map, (POJOClass) ((IFacade) pojoClass).getTarget());
        }
    };
    Field delegateField = HibernateMappingExporterExtension.class.getDeclaredField("delegateExporter");
    delegateField.setAccessible(true);
    delegateField.set(hibernateMappingExporter, delegate);
    hibernateMappingExporterFacade.start();
    Assert.assertFalse(dummyDir.exists());
    Assert.assertTrue(fooHbmXml.exists());
    Assert.assertTrue(fooHbmXml.delete());
    Assert.assertTrue(outputDir.exists());
}
Also used : RootClass(org.hibernate.mapping.RootClass) Field(java.lang.reflect.Field) Table(org.hibernate.mapping.Table) Configuration(org.hibernate.cfg.Configuration) Mappings(org.hibernate.cfg.Mappings) IPOJOClass(org.jboss.tools.hibernate.runtime.spi.IPOJOClass) IExportPOJODelegate(org.jboss.tools.hibernate.runtime.spi.IExportPOJODelegate) IFacade(org.jboss.tools.hibernate.runtime.common.IFacade) File(java.io.File) HashMap(java.util.HashMap) Map(java.util.Map) Test(org.junit.Test)

Example 33 with RootClass

use of org.hibernate.mapping.RootClass in project jbosstools-hibernate by jbosstools.

the class HibernateMappingExporterExtensionTest method createPojoClass.

private POJOClass createPojoClass() {
    RootClass persistentClass = new RootClass();
    Table rootTable = new Table();
    rootTable.setName("table");
    persistentClass.setTable(rootTable);
    persistentClass.setEntityName("Bar");
    persistentClass.setClassName("foo.Bar");
    return new EntityPOJOClass(persistentClass, new Cfg2JavaTool());
}
Also used : RootClass(org.hibernate.mapping.RootClass) EntityPOJOClass(org.hibernate.tool.hbm2x.pojo.EntityPOJOClass) Table(org.hibernate.mapping.Table) Cfg2JavaTool(org.hibernate.tool.hbm2x.Cfg2JavaTool)

Example 34 with RootClass

use of org.hibernate.mapping.RootClass in project jbosstools-hibernate by jbosstools.

the class ConfigurationFacadeTest method testGetClassMappings.

@Test
public void testGetClassMappings() {
    configurationFacade = FACADE_FACTORY.createConfiguration(configuration);
    Iterator<IPersistentClass> iterator = configurationFacade.getClassMappings();
    assertFalse(iterator.hasNext());
    PersistentClass persistentClass = new RootClass();
    persistentClass.setEntityName("Foo");
    Mappings mappings = configuration.createMappings();
    mappings.addClass(persistentClass);
    configurationFacade = FACADE_FACTORY.createConfiguration(configuration);
    iterator = configurationFacade.getClassMappings();
    IPersistentClass persistentClassFacade = iterator.next();
    assertSame(persistentClass, ((IFacade) persistentClassFacade).getTarget());
}
Also used : RootClass(org.hibernate.mapping.RootClass) Mappings(org.hibernate.cfg.Mappings) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) PersistentClass(org.hibernate.mapping.PersistentClass) IPersistentClass(org.jboss.tools.hibernate.runtime.spi.IPersistentClass) Test(org.junit.jupiter.api.Test)

Example 35 with RootClass

use of org.hibernate.mapping.RootClass in project jbosstools-hibernate by jbosstools.

the class EntityMetamodelFacadeTest method createFoobarModel.

@SuppressWarnings("serial")
private EntityMetamodel createFoobarModel() {
    Configuration configuration = new Configuration();
    configuration.setProperty(AvailableSettings.DIALECT, TestDialect.class.getName());
    ServiceRegistryBuilder builder = new ServiceRegistryBuilder();
    builder.applySettings(configuration.getProperties());
    ServiceRegistry serviceRegistry = builder.buildServiceRegistry();
    SessionFactoryImplementor sfi = (SessionFactoryImplementor) configuration.buildSessionFactory(serviceRegistry);
    RootClass rc = new RootClass();
    Table t = new Table("foobar");
    rc.setTable(t);
    Column c = new Column("foo");
    t.addColumn(c);
    ArrayList<Column> keyList = new ArrayList<>();
    keyList.add(c);
    t.createUniqueKey(keyList);
    SimpleValue sv = new SimpleValue(configuration.createMappings());
    sv.setNullValue("null");
    sv.setTypeName(Integer.class.getName());
    sv.addColumn(c);
    rc.setEntityName("foobar");
    rc.setIdentifier(sv);
    return entityMetamodel = new EntityMetamodel(rc, sfi) {

        @Override
        public EntityTuplizer getTuplizer() {
            return (EntityTuplizer) Proxy.newProxyInstance(FACADE_FACTORY.getClassLoader(), new Class[] { EntityTuplizer.class }, new TestInvocationHandler());
        }

        @Override
        public Integer getPropertyIndexOrNull(String id) {
            methodName = "getPropertyIndexOrNull";
            arguments = new Object[] { id };
            return INDEX;
        }
    };
}
Also used : RootClass(org.hibernate.mapping.RootClass) EntityTuplizer(org.hibernate.tuple.entity.EntityTuplizer) Table(org.hibernate.mapping.Table) Configuration(org.hibernate.cfg.Configuration) SessionFactoryImplementor(org.hibernate.engine.spi.SessionFactoryImplementor) ArrayList(java.util.ArrayList) ServiceRegistryBuilder(org.hibernate.service.ServiceRegistryBuilder) SimpleValue(org.hibernate.mapping.SimpleValue) Column(org.hibernate.mapping.Column) ServiceRegistry(org.hibernate.service.ServiceRegistry) EntityMetamodel(org.hibernate.tuple.entity.EntityMetamodel) IEntityMetamodel(org.jboss.tools.hibernate.runtime.spi.IEntityMetamodel)

Aggregations

RootClass (org.hibernate.mapping.RootClass)609 Test (org.junit.jupiter.api.Test)471 PersistentClass (org.hibernate.mapping.PersistentClass)166 IPersistentClass (org.jboss.tools.hibernate.runtime.spi.IPersistentClass)162 Field (java.lang.reflect.Field)149 SimpleValue (org.hibernate.mapping.SimpleValue)142 Table (org.hibernate.mapping.Table)136 IProperty (org.jboss.tools.hibernate.runtime.spi.IProperty)130 Property (org.hibernate.mapping.Property)124 Component (org.hibernate.mapping.Component)109 Column (org.hibernate.mapping.Column)53 ArrayList (java.util.ArrayList)51 IFacade (org.jboss.tools.hibernate.runtime.common.IFacade)51 ITable (org.jboss.tools.hibernate.runtime.spi.ITable)44 StandardServiceRegistryBuilder (org.hibernate.boot.registry.StandardServiceRegistryBuilder)43 Configuration (org.hibernate.cfg.Configuration)37 OneToOne (org.hibernate.mapping.OneToOne)37 MetadataSources (org.hibernate.boot.MetadataSources)35 Test (org.junit.Test)35 SingleTableSubclass (org.hibernate.mapping.SingleTableSubclass)34