Java 类org.hibernate.boot.model.relational.Namespace 实例源码

项目:hibernate-ogm-ignite    文件:IgniteCacheInitializer.java   
@SuppressWarnings("unchecked")
private void addTableInfo(QueryEntity queryEntity, SchemaDefinitionContext context, String tableName) {
    Namespace namespace = context.getDatabase().getDefaultNamespace();
    Optional<Table> tableOptional = namespace.getTables().stream().filter( currentTable -> currentTable.getName().equals( tableName ) ).findFirst();
    if ( tableOptional.isPresent() ) {
        Table table = tableOptional.get();
        for ( Iterator<Column> columnIterator = table.getColumnIterator(); columnIterator.hasNext(); ) {
            Column currentColumn = columnIterator.next();
            String fieldType = fieldType( currentColumn );
            queryEntity.addQueryField( currentColumn.getName(), fieldType, null );
        }
    }
}
项目:hibernate-semantic-query    文件:OrmHelper.java   
private static void populateDatabaseModel(MetadataImplementor metadata, ExplicitSqmDomainMetamodel domainMetamodel) {
        final Database database = metadata.getDatabase();
        final DatabaseModelImpl databaseModel = (DatabaseModelImpl) domainMetamodel.getDatabaseModel();

        // todo : apply PhysicalNamingStrategy here, rather than as we create the "mapping model"?

        // todo : we need DatabaseModel to incorporate catalogs/schemas in some fashion
        //      either like org.hibernate.boot.model.relational.Database does
        //      or via catalogs/schemas-specific names
        for ( Namespace namespace : database.getNamespaces() ) {
            for ( Table mappingTable : namespace.getTables() ) {
                // todo : incorporate mapping Table's isAbstract indicator
                final org.hibernate.orm.persister.common.spi.Table table;
                if ( mappingTable instanceof DenormalizedTable ) {
                    // this is akin to a UnionSubclassTable
                    throw new NotYetImplementedException( "DenormalizedTable support not yet implemented" );
                }
                else if ( mappingTable.getSubselect() != null ) {
                    table = new DerivedTable( mappingTable.getSubselect() );
                }
                else {
//                  final JdbcEnvironment jdbcEnvironment = sessionFactory.getJdbcServices().getJdbcEnvironment();
//                  final String qualifiedTableName = jdbcEnvironment.getQualifiedObjectNameFormatter().format(
//                          mappingTable.getQualifiedTableName(),
//                          jdbcEnvironment.getDialect()
//                  );
                    final String qualifiedTableName = mappingTable.getQualifiedTableName().render();
                    table = new PhysicalTable( qualifiedTableName );
                }

                databaseModel.registerTable( table );
            }
        }
    }
项目:high-performance-java-persistence    文件:MetadataTest.java   
@Test
public void testDatabaseMetadata() {
    for(Namespace namespace : MetadataExtractorIntegrator.INSTANCE.getDatabase().getNamespaces()) {
        for( Table table : namespace.getTables()) {
            LOGGER.info( "Table {} has the following columns: {}",
                 table,
                 StreamSupport.stream(
                     Spliterators.spliteratorUnknownSize( table.getColumnIterator(), Spliterator.ORDERED), false)
                 .collect( Collectors.toList()) );
        }
    }
}