List of usage examples for org.hibernate.engine.jdbc.dialect.spi DatabaseMetaDataDialectResolutionInfoAdapter DatabaseMetaDataDialectResolutionInfoAdapter
public DatabaseMetaDataDialectResolutionInfoAdapter(DatabaseMetaData databaseMetaData)
From source file:de.richtercloud.reflection.form.builder.jpa.sequence.HibernateWrapperSequenceManager.java
License:Open Source License
private <T> T doHibernateSQLTask(HibernateSQLTask<T> task) throws SequenceManagementException { return doSQLTask((connection) -> { DialectResolver dialectResolver = new StandardDialectResolver(); DialectResolutionInfo dialectResolutionInfo = new DatabaseMetaDataDialectResolutionInfoAdapter( connection.getMetaData()); Dialect dialect = dialectResolver.resolveDialect(dialectResolutionInfo); return task.run(dialect, connection); });//from ww w .j a v a 2 s. c o m }
From source file:org.codehaus.griffon.runtime.hibernate4.internal.DialectDetector.java
License:Apache License
public String getDialect() { Connection connection = null; try {// ww w . j a v a 2 s. com String dbName = (String) JdbcUtils.extractDatabaseMetaData(dataSource, "getDatabaseProductName"); connection = dataSource.getConnection(); DialectResolutionInfo dialectResolutionInfo = new DatabaseMetaDataDialectResolutionInfoAdapter( connection.getMetaData()); Dialect hibernateDialect = dialectResolver.resolveDialect(dialectResolutionInfo); String hibernateDialectClassName = hibernateDialect.getClass().getName(); if (GriffonNameUtils.isBlank(hibernateDialectClassName)) { throw new DatabaseException( "Could not determine Hibernate dialect for database name [" + dbName + "]!"); } return hibernateDialectClassName; } catch (SQLException e) { throw new DatabaseException(e); } finally { JdbcUtils.closeConnection(connection); } }
From source file:org.grails.orm.hibernate.support.HibernateDialectDetectorFactoryBean.java
License:Apache License
public void afterPropertiesSet() throws MetaDataAccessException { Assert.notNull(dataSource, "Data source is not set!"); Assert.notNull(vendorNameDialectMappings, "Vendor name/dialect mappings are not set!"); Connection connection = null; String dbName = (String) JdbcUtils.extractDatabaseMetaData(dataSource, "getDatabaseProductName"); try {// ww w .j ava2s. c o m connection = DataSourceUtils.getConnection(dataSource); try { final DialectFactory dialectFactory = createDialectFactory(); final Connection finalConnection = connection; DialectResolutionInfoSource infoSource = new DialectResolutionInfoSource() { @Override public DialectResolutionInfo getDialectResolutionInfo() { try { return new DatabaseMetaDataDialectResolutionInfoAdapter(finalConnection.getMetaData()); } catch (SQLException e) { throw new CouldNotDetermineHibernateDialectException( "Could not determine Hibernate dialect", e); } } }; hibernateDialect = dialectFactory.buildDialect(hibernateProperties, infoSource); hibernateDialectClassName = hibernateDialect.getClass().getName(); } catch (HibernateException e) { hibernateDialectClassName = vendorNameDialectMappings.getProperty(dbName); } if (!StringUtils.hasText(hibernateDialectClassName)) { throw new CouldNotDetermineHibernateDialectException( "Could not determine Hibernate dialect for database name [" + dbName + "]!"); } } finally { DataSourceUtils.releaseConnection(connection, dataSource); } }
From source file:org.jboss.pnc.datastore.repositories.DefaultSequenceHandlerRepository.java
License:Open Source License
public DatabaseMetaDataDialectResolutionInfoAdapter getResolutionInfo(Connection connection) throws SQLException { return new DatabaseMetaDataDialectResolutionInfoAdapter(connection.getMetaData()); }