List of usage examples for org.hibernate.boot Metadata getEntityBindings
java.util.Collection<PersistentClass> getEntityBindings();
From source file:com.blazebit.persistence.integration.hibernate.Hibernate52Integrator.java
License:Apache License
@Override public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) { // TODO: remember metadata for exact column types for (PersistentClass clazz : metadata.getEntityBindings()) { Class<?> entityClass = clazz.getMappedClass(); if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) { clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName()); }//from w w w . ja v a 2s . com } serviceRegistry.locateServiceBinding(PersisterClassResolver.class) .setService(new CustomPersisterClassResolver()); TableNameFormatter formatter = new NativeTableNameFormatter( sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter()); serviceRegistry.locateServiceBinding(Database.class) .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()), sessionFactory.getDialect(), formatter, metadata)); }
From source file:com.blazebit.persistence.integration.hibernate.Hibernate5Integrator.java
License:Apache License
@Override public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) { for (PersistentClass clazz : metadata.getEntityBindings()) { Class<?> entityClass = clazz.getMappedClass(); if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) { clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName()); }/*w w w . j a va2 s . co m*/ } serviceRegistry.locateServiceBinding(PersisterClassResolver.class) .setService(new CustomPersisterClassResolver()); TableNameFormatter formatter = new NativeTableNameFormatter( sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter()); serviceRegistry.locateServiceBinding(Database.class) .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()), sessionFactory.getDialect(), formatter, metadata)); }
From source file:com.blazebit.persistence.integration.hibernate.Hibernate60Integrator.java
License:Apache License
@Override public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) { for (PersistentClass clazz : metadata.getEntityBindings()) { Class<?> entityClass = clazz.getMappedClass(); if (entityClass != null && entityClass.isAnnotationPresent(CTE.class)) { clazz.getTable().setSubselect("select * from " + clazz.getJpaEntityName()); }/*from w w w .j ava 2s .c om*/ } serviceRegistry.locateServiceBinding(PersisterClassResolver.class) .setService(new CustomPersisterClassResolver()); TableNameFormatter formatter = new NativeTableNameFormatter( sessionFactory.getJdbcServices().getJdbcEnvironment().getQualifiedObjectNameFormatter()); serviceRegistry.locateServiceBinding(Database.class) .setService(new SimpleDatabase(getTableIterator(metadata.getDatabase().getNamespaces()), sessionFactory.getJdbcServices().getDialect(), formatter, metadata)); }
From source file:com.clueride.rest.MemberWebService.java
License:Apache License
private void dumpEntities() { Metadata metadata = MetadataExtractorIntegrator.INSTANCE.getMetadata(); for (PersistentClass persistentClass : metadata.getEntityBindings()) { Table table = persistentClass.getTable(); LOGGER.info(String.format("Entity: {} is mapped to table: {}", persistentClass.getClassName(), table.getName()));//from www . ja v a 2 s. co m for (Iterator propertyIterator = persistentClass.getPropertyIterator(); propertyIterator.hasNext();) { Property property = (Property) propertyIterator.next(); for (Iterator columnIterator = property.getColumnIterator(); columnIterator.hasNext();) { Column column = (Column) columnIterator.next(); LOGGER.info(String.format("Property: {} is mapped on table column: {} of type: {}", property.getName(), column.getName(), column.getSqlType())); } } } }
From source file:com.googlecode.hibernate.audit.extension.auditable.DefaultAuditableInformationProvider.java
License:Open Source License
public String getEntityName(Metadata metadata, Session session, String auditTypeClassName) { if (provider != null) { return provider.getEntityName(metadata, session, auditTypeClassName); }/*from w w w .ja v a 2 s . c o m*/ for (PersistentClass classMapping : metadata.getEntityBindings()) { Class mappedClass = classMapping.getMappedClass(); if (mappedClass == null) { mappedClass = classMapping.getProxyInterface(); } if (mappedClass.getName().equals(auditTypeClassName)) { return classMapping.getEntityName(); } } return auditTypeClassName; }
From source file:com.googlecode.hibernate.audit.listener.AuditListener.java
License:Open Source License
private void processDynamicUpdate(Metadata metadata, SessionFactoryServiceRegistry serviceRegistry) { if (serviceRegistry.getService(ConfigurationService.class).getSetting( HibernateAudit.AUDIT_SET_DYNAMIC_UPDATE_FOR_AUDITED_MODEL_PROPERTY, StandardConverters.BOOLEAN, false)) {/* w ww . ja va 2s.c om*/ for (PersistentClass persistentClass : metadata.getEntityBindings()) { persistentClass.setDynamicUpdate(true); if (log.isInfoEnabled()) { log.info("Set dynamic-update to true for entity: " + persistentClass.getEntityName()); } } } }
From source file:org.apache.ignite.cache.hibernate.HibernateL2CacheStrategySelfTest.java
License:Apache License
/** * @param accessType Cache access typr./* w w w. ja v a2 s .c o m*/ * @param igniteInstanceName Name of the grid providing caches. * @return Session factory. */ private SessionFactory startHibernate(AccessType accessType, String igniteInstanceName) { StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder(); builder.applySetting("hibernate.connection.url", CONNECTION_URL); for (Map.Entry<String, String> e : HibernateL2CacheSelfTest .hibernateProperties(igniteInstanceName, accessType.name()).entrySet()) builder.applySetting(e.getKey(), e.getValue()); builder.applySetting(USE_STRUCTURED_CACHE, "true"); builder.applySetting(REGION_CACHE_PROPERTY + ENTITY1_NAME, "cache1"); builder.applySetting(REGION_CACHE_PROPERTY + ENTITY2_NAME, "cache2"); builder.applySetting(REGION_CACHE_PROPERTY + TIMESTAMP_CACHE, TIMESTAMP_CACHE); builder.applySetting(REGION_CACHE_PROPERTY + QUERY_CACHE, QUERY_CACHE); MetadataSources metadataSources = new MetadataSources(builder.build()); metadataSources.addAnnotatedClass(Entity1.class); metadataSources.addAnnotatedClass(Entity2.class); metadataSources.addAnnotatedClass(Entity3.class); metadataSources.addAnnotatedClass(Entity4.class); Metadata metadata = metadataSources.buildMetadata(); for (PersistentClass entityBinding : metadata.getEntityBindings()) { if (!entityBinding.isInherited()) ((RootClass) entityBinding).setCacheConcurrencyStrategy(accessType.getExternalName()); } return metadata.buildSessionFactory(); }
From source file:org.infinispan.test.hibernate.cache.commons.functional.AbstractFunctionalTest.java
License:LGPL
@Override protected void afterMetadataBuilt(Metadata metadata) { if (addVersions) { for (PersistentClass clazz : metadata.getEntityBindings()) { if (clazz.getVersion() != null) { continue; }/* ww w .j a v a 2 s . c o m*/ try { clazz.getMappedClass().getMethod("getVersion"); clazz.getMappedClass().getMethod("setVersion", long.class); } catch (NoSuchMethodException e) { continue; } RootClass rootClazz = clazz.getRootClass(); Property versionProperty = new Property(); versionProperty.setName("version"); SimpleValue value = new SimpleValue((MetadataImplementor) metadata, rootClazz.getTable()); value.setTypeName("long"); Column column = new Column(); column.setValue(value); column.setName("version"); value.addColumn(column); rootClazz.getTable().addColumn(column); versionProperty.setValue(value); rootClazz.setVersion(versionProperty); rootClazz.addProperty(versionProperty); } } }
From source file:org.infinispan.test.hibernate.cache.commons.stress.CorrectnessTestCase.java
License:LGPL
private Metadata buildMetadata(StandardServiceRegistry registry) { MetadataSources metadataSources = new MetadataSources(registry); for (Class entityClass : getAnnotatedClasses()) { metadataSources.addAnnotatedClass(entityClass); }//from ww w . ja va 2 s. co m Metadata metadata = metadataSources.buildMetadata(); for (PersistentClass entityBinding : metadata.getEntityBindings()) { if (!entityBinding.isInherited()) { ((RootClass) entityBinding).setCacheConcurrencyStrategy(accessType.getExternalName()); } } // Collections don't have integrated version, these piggyback on parent's owner version (for DB). // However, this version number isn't extractable and is not passed to cache methods. AccessType collectionAccessType = accessType == AccessType.NONSTRICT_READ_WRITE ? AccessType.READ_WRITE : accessType; for (Collection collectionBinding : metadata.getCollectionBindings()) { collectionBinding.setCacheConcurrencyStrategy(collectionAccessType.getExternalName()); } return metadata; }
From source file:org.infinispan.test.hibernate.cache.commons.stress.PutFromLoadStressTestCase.java
License:LGPL
@BeforeClass public static void beforeClass() { // Extra options located in src/test/resources/hibernate.properties StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder() .applySetting(Environment.USE_SECOND_LEVEL_CACHE, "true") .applySetting(Environment.USE_QUERY_CACHE, "true") // TODO: Tweak to have a fully local region factory (no transport, cache mode = local, no marshalling, ...etc) .applySetting(Environment.CACHE_REGION_FACTORY, "org.infinispan.hibernate.cache.InfinispanRegionFactory") .applySetting(Environment.JTA_PLATFORM, new NarayanaStandaloneJtaPlatform()) // Force minimal puts off to simplify stressing putFromLoad logic .applySetting(Environment.USE_MINIMAL_PUTS, "false") .applySetting(Environment.HBM2DDL_AUTO, "create-drop"); StandardServiceRegistry serviceRegistry = ssrb.build(); MetadataSources metadataSources = new MetadataSources(serviceRegistry) .addResource("cache/infinispan/functional/Item.hbm.xml") .addResource("cache/infinispan/functional/Customer.hbm.xml") .addResource("cache/infinispan/functional/Contact.hbm.xml").addAnnotatedClass(Age.class); Metadata metadata = metadataSources.buildMetadata(); for (PersistentClass entityBinding : metadata.getEntityBindings()) { if (entityBinding instanceof RootClass) { ((RootClass) entityBinding).setCacheConcurrencyStrategy("transactional"); }/* w w w .j av a 2 s. co m*/ } for (Collection collectionBinding : metadata.getCollectionBindings()) { collectionBinding.setCacheConcurrencyStrategy("transactional"); } sessionFactory = metadata.buildSessionFactory(); tm = com.arjuna.ats.jta.TransactionManager.transactionManager(); }