private void addDatabaseTableToDataSetComboBox() { DefaultComboBoxModel<RelationDefinition> relationList = new DefaultComboBoxModel<>(); try { Connection conn = ConnectionTools.getConnection(selectedSource); RDBMetadata md = RDBMetadataExtractionTools.createMetadata(conn, obdaModel.getTypeFactory(), jdbcTypeMapper); // this operation is EXPENSIVE -- only names are needed + a flag for table/view RDBMetadataExtractionTools.loadMetadata(md, conn, null); for (DatabaseRelationDefinition relation : md.getDatabaseRelations()) { relationList.addElement(relation); } } catch (SQLException e) { // NO-OP } cboDataSet.setModel(relationList); cboDataSet.setSelectedIndex(-1); }
/*** * extract mappings from given datasource, and insert them into the pre-processed mapping * * Duplicate Exception may happen, * since mapping id is generated randomly and same id may occur */ private SQLPPMapping bootstrapMappings(SQLPPMapping ppMapping) throws SQLException, DuplicateMappingException { if (ppMapping == null) { throw new IllegalArgumentException("Model should not be null"); } try (Connection conn = LocalJDBCConnectionUtils.createConnection(settings)) { RDBMetadata metadata = RDBMetadataExtractionTools.createMetadata(conn, typeFactory, jdbcTypeMapper); // this operation is EXPENSIVE RDBMetadataExtractionTools.loadMetadata(metadata, conn, null); return bootstrapMappings(metadata, ppMapping); } }
/*** * extract mappings from given datasource, and insert them into the pre-processed mapping * * Duplicate Exception may happen, * since mapping id is generated randomly and same id may occur */ private SQLPPMapping bootstrapMappings(SQLPPMapping ppMapping) throws SQLException, DuplicateMappingException { if (ppMapping == null) { throw new IllegalArgumentException("Model should not be null"); } try (Connection conn = LocalJDBCConnectionUtils.createConnection(settings)) { RDBMetadata metadata = RDBMetadataExtractionTools.createMetadata(conn); // this operation is EXPENSIVE RDBMetadataExtractionTools.loadMetadata(metadata, conn, null); return bootstrapMappings(metadata, ppMapping); } }
RDBMetadataExtractionTools.loadMetadata(metadata, connection, null); }); RDBMetadataExtractionTools.loadMetadata(metadata, connection, realTables);
RDBMetadataExtractionTools.loadMetadata(metadata, connection, null); }); RDBMetadataExtractionTools.loadMetadata(metadata, connection, realTables);
RDBMetadataExtractionTools.loadMetadata(metadata, conn, null);