mil.nga.geopackage.metadata.reference.MetadataReference Java Examples
The following examples show how to use
mil.nga.geopackage.metadata.reference.MetadataReference.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: GeoPackageExtensions.java From geopackage-core-java with MIT License | 6 votes |
/** * Copy the Metadata extensions for the table * * @param geoPackage * GeoPackage * @param table * table name * @param newTable * new table name * @since 3.3.0 */ public static void copyMetadata(GeoPackageCore geoPackage, String table, String newTable) { try { if (geoPackage.isTable(MetadataReference.TABLE_NAME)) { CoreSQLUtils.transferTableContent(geoPackage.getDatabase(), MetadataReference.TABLE_NAME, MetadataReference.COLUMN_TABLE_NAME, newTable, table); } } catch (Exception e) { logger.log(Level.WARNING, "Failed to create Metadata for table: " + newTable + ", copied from table: " + table, e); } }
Example #2
Source File: MetadataExtension.java From geopackage-core-java with MIT License | 6 votes |
/** * Remove all trace of the extension * * @since 3.2.0 */ public void removeExtension() { if (geoPackage.isTable(MetadataReference.TABLE_NAME)) { geoPackage.dropTable(MetadataReference.TABLE_NAME); } if (geoPackage.isTable(Metadata.TABLE_NAME)) { geoPackage.dropTable(Metadata.TABLE_NAME); } try { if (extensionsDao.isTableExists()) { extensionsDao.deleteByExtension(EXTENSION_NAME); } } catch (SQLException e) { throw new GeoPackageException( "Failed to delete Metadata extension. GeoPackage: " + geoPackage.getName(), e); } }
Example #3
Source File: GeoPackageCoreImpl.java From geopackage-core-java with MIT License | 6 votes |
/** * {@inheritDoc} */ @Override public boolean createMetadataReferenceTable() { verifyWritable(); boolean created = false; MetadataReferenceDao dao = getMetadataReferenceDao(); try { if (!dao.isTableExists()) { created = tableCreator.createMetadataReference() > 0; } } catch (SQLException e) { throw new GeoPackageException("Failed to check if " + MetadataReference.class.getSimpleName() + " table exists and create it", e); } return created; }
Example #4
Source File: GeoPackageDaoManager.java From geopackage-core-java with MIT License | 6 votes |
/** * Unregister all GeoPackage DAO with the connection source * * @param connectionSource * connection source */ public static void unregisterDaos(ConnectionSource connectionSource) { // TODO when ormlite-core version > 5.1 is released, replace with: // "DaoManager.unregisterDaos(connectionSource);" // See https://github.com/j256/ormlite-core/pull/149 unregisterDao(connectionSource, Contents.class, SpatialReferenceSystem.class, SpatialReferenceSystemSfSql.class, SpatialReferenceSystemSqlMm.class, Extensions.class, GriddedCoverage.class, GriddedTile.class, GeometryIndex.class, TableIndex.class, FeatureTileLink.class, ExtendedRelation.class, TileScaling.class, GeometryColumns.class, GeometryColumnsSfSql.class, GeometryColumnsSqlMm.class, Metadata.class, MetadataReference.class, DataColumns.class, DataColumnConstraints.class, TileMatrix.class, TileMatrixSet.class, ContentsId.class); }
Example #5
Source File: MetadataExtension.java From geopackage-core-java with MIT License | 5 votes |
/** * Get or create the extension * * @return extensions */ public List<Extensions> getOrCreate() { List<Extensions> extensions = new ArrayList<>(); extensions.add(getOrCreate(EXTENSION_NAME, Metadata.TABLE_NAME, null, DEFINITION, ExtensionScopeType.READ_WRITE)); extensions.add(getOrCreate(EXTENSION_NAME, MetadataReference.TABLE_NAME, null, DEFINITION, ExtensionScopeType.READ_WRITE)); return extensions; }
Example #6
Source File: MetadataDao.java From geopackage-core-java with MIT License | 5 votes |
/** * Get or create a Metadata Reference DAO * * @return metadata reference dao * @throws SQLException */ private MetadataReferenceDao getMetadataReferenceDao() throws SQLException { if (metadataReferenceDao == null) { metadataReferenceDao = DaoManager.createDao(connectionSource, MetadataReference.class); } return metadataReferenceDao; }
Example #7
Source File: MetadataReferenceUtils.java From geopackage-android with MIT License | 4 votes |
/** * Test create * * @param geoPackage * @throws SQLException */ public static void testCreate(GeoPackage geoPackage) throws SQLException { MetadataReferenceDao dao = geoPackage.getMetadataReferenceDao(); MetadataDao metadataDao = geoPackage.getMetadataDao(); if (dao.isTableExists()) { // Get current count long count = dao.countOf(); long fileId = 5555; long parentId = 5556; // Create new metadata Metadata metadata = new Metadata(); metadata.setId(fileId); metadata.setMetadataScope(MetadataScopeType.FEATURE); metadata.setStandardUri("https://www.nga.mil"); metadata.setMimeType("text/xml"); metadata.setMetadata("Create metadata text"); metadataDao.create(metadata); Metadata metadata2 = new Metadata(); metadata2.setId(parentId); metadata2.setMetadataScope(MetadataScopeType.FEATURE_TYPE); metadata2.setStandardUri("https://www.nga.mil"); metadata2.setMimeType("text/xml"); metadata2.setMetadata("Create metadata text 2"); metadataDao.create(metadata2); ReferenceScopeType scopeType = ReferenceScopeType.ROW; String tableName = "CREATE_TABLE_NAME"; long rowIdValue = 50; Date timestamp = new Date(); MetadataReference reference = new MetadataReference(); reference.setReferenceScope(scopeType); reference.setTableName(tableName); reference.setRowIdValue(rowIdValue); reference.setTimestamp(timestamp); reference.setMetadata(metadata); reference.setParentMetadata(metadata2); dao.create(reference); // Verify count long newCount = dao.countOf(); TestCase.assertEquals(count + 1, newCount); // Verify saved metadata List<MetadataReference> queryMetadataReferenceList = dao .queryByMetadata(fileId, parentId); TestCase.assertNotNull(queryMetadataReferenceList); TestCase.assertEquals(1, queryMetadataReferenceList.size()); MetadataReference queryMetadataReference = queryMetadataReferenceList .get(0); TestCase.assertEquals(scopeType, queryMetadataReference.getReferenceScope()); TestCase.assertEquals(tableName, queryMetadataReference.getTableName()); TestCase.assertNull(queryMetadataReference.getColumnName()); TestCase.assertEquals(rowIdValue, queryMetadataReference .getRowIdValue().longValue()); TestCase.assertEquals(timestamp, queryMetadataReference.getTimestamp()); TestCase.assertEquals(fileId, queryMetadataReference.getFileId()); TestCase.assertEquals(parentId, queryMetadataReference .getParentId().longValue()); TestCase.assertNotNull(queryMetadataReference.getMetadata()); TestCase.assertNotNull(queryMetadataReference.getParentMetadata()); } }
Example #8
Source File: MetadataReferenceUtils.java From geopackage-android with MIT License | 4 votes |
/** * Test delete * * @param geoPackage * @throws SQLException */ public static void testDelete(GeoPackage geoPackage) throws SQLException { MetadataReferenceDao dao = geoPackage.getMetadataReferenceDao(); if (dao.isTableExists()) { List<MetadataReference> results = dao.queryForAll(); if (!results.isEmpty()) { // Choose random metadata int random = (int) (Math.random() * results.size()); MetadataReference metadataReference = results.get(random); // Delete the metadata reference dao.delete(metadataReference); // Verify deleted List<MetadataReference> queryMetadataReferenceList = dao .queryByMetadata(metadataReference.getFileId(), metadataReference.getParentId()); TestCase.assertTrue(queryMetadataReferenceList.isEmpty()); // Choose prepared deleted results = dao.queryForAll(); if (!results.isEmpty()) { // Choose random metadata random = (int) (Math.random() * results.size()); metadataReference = results.get(random); // Find which metadata to delete QueryBuilder<MetadataReference, Void> qb = dao .queryBuilder(); qb.where().eq(MetadataReference.COLUMN_FILE_ID, metadataReference.getFileId()); PreparedQuery<MetadataReference> query = qb.prepare(); List<MetadataReference> queryResults = dao.query(query); int count = queryResults.size(); // Delete DeleteBuilder<MetadataReference, Void> db = dao .deleteBuilder(); db.where().eq(MetadataReference.COLUMN_FILE_ID, metadataReference.getFileId()); PreparedDelete<MetadataReference> deleteQuery = db .prepare(); int deleted = dao.delete(deleteQuery); TestCase.assertEquals(count, deleted); } } } }
Example #9
Source File: GeoPackageCoreImpl.java From geopackage-core-java with MIT License | 4 votes |
/** * {@inheritDoc} */ @Override public MetadataReferenceDao getMetadataReferenceDao() { return createDao(MetadataReference.class); }
Example #10
Source File: MetadataReferenceUtils.java From geopackage-java with MIT License | 4 votes |
/** * Test create * * @param geoPackage * @throws SQLException */ public static void testCreate(GeoPackage geoPackage) throws SQLException { MetadataReferenceDao dao = geoPackage.getMetadataReferenceDao(); MetadataDao metadataDao = geoPackage.getMetadataDao(); if (dao.isTableExists()) { // Get current count long count = dao.countOf(); long fileId = 5555; long parentId = 5556; // Create new metadata Metadata metadata = new Metadata(); metadata.setId(fileId); metadata.setMetadataScope(MetadataScopeType.FEATURE); metadata.setStandardUri("https://www.nga.mil"); metadata.setMimeType("text/xml"); metadata.setMetadata("Create metadata text"); metadataDao.create(metadata); Metadata metadata2 = new Metadata(); metadata2.setId(parentId); metadata2.setMetadataScope(MetadataScopeType.FEATURE_TYPE); metadata2.setStandardUri("https://www.nga.mil"); metadata2.setMimeType("text/xml"); metadata2.setMetadata("Create metadata text 2"); metadataDao.create(metadata2); ReferenceScopeType scopeType = ReferenceScopeType.ROW; String tableName = "CREATE_TABLE_NAME"; long rowIdValue = 50; Date timestamp = new Date(); MetadataReference reference = new MetadataReference(); reference.setReferenceScope(scopeType); reference.setTableName(tableName); reference.setRowIdValue(rowIdValue); reference.setTimestamp(timestamp); reference.setMetadata(metadata); reference.setParentMetadata(metadata2); dao.create(reference); // Verify count long newCount = dao.countOf(); TestCase.assertEquals(count + 1, newCount); // Verify saved metadata List<MetadataReference> queryMetadataReferenceList = dao .queryByMetadata(fileId, parentId); TestCase.assertNotNull(queryMetadataReferenceList); TestCase.assertEquals(1, queryMetadataReferenceList.size()); MetadataReference queryMetadataReference = queryMetadataReferenceList .get(0); TestCase.assertEquals(scopeType, queryMetadataReference.getReferenceScope()); TestCase.assertEquals(tableName, queryMetadataReference.getTableName()); TestCase.assertNull(queryMetadataReference.getColumnName()); TestCase.assertEquals(rowIdValue, queryMetadataReference .getRowIdValue().longValue()); TestCase.assertEquals(timestamp, queryMetadataReference.getTimestamp()); TestCase.assertEquals(fileId, queryMetadataReference.getFileId()); TestCase.assertEquals(parentId, queryMetadataReference .getParentId().longValue()); TestCase.assertNotNull(queryMetadataReference.getMetadata()); TestCase.assertNotNull(queryMetadataReference.getParentMetadata()); } }
Example #11
Source File: MetadataReferenceUtils.java From geopackage-java with MIT License | 4 votes |
/** * Test delete * * @param geoPackage * @throws SQLException */ public static void testDelete(GeoPackage geoPackage) throws SQLException { MetadataReferenceDao dao = geoPackage.getMetadataReferenceDao(); if (dao.isTableExists()) { List<MetadataReference> results = dao.queryForAll(); if (!results.isEmpty()) { // Choose random metadata int random = (int) (Math.random() * results.size()); MetadataReference metadataReference = results.get(random); // Delete the metadata reference dao.delete(metadataReference); // Verify deleted List<MetadataReference> queryMetadataReferenceList = dao .queryByMetadata(metadataReference.getFileId(), metadataReference.getParentId()); TestCase.assertTrue(queryMetadataReferenceList.isEmpty()); // Choose prepared deleted results = dao.queryForAll(); if (!results.isEmpty()) { // Choose random metadata random = (int) (Math.random() * results.size()); metadataReference = results.get(random); // Find which metadata to delete QueryBuilder<MetadataReference, Void> qb = dao .queryBuilder(); qb.where().eq(MetadataReference.COLUMN_FILE_ID, metadataReference.getFileId()); PreparedQuery<MetadataReference> query = qb.prepare(); List<MetadataReference> queryResults = dao.query(query); int count = queryResults.size(); // Delete DeleteBuilder<MetadataReference, Void> db = dao .deleteBuilder(); db.where().eq(MetadataReference.COLUMN_FILE_ID, metadataReference.getFileId()); PreparedDelete<MetadataReference> deleteQuery = db .prepare(); int deleted = dao.delete(deleteQuery); TestCase.assertEquals(count, deleted); } } } }