Class DGIWGGeoPackage

All Implemented Interfaces:
Closeable, AutoCloseable, GeoPackage, GeoPackageCore

public class DGIWGGeoPackage extends GeoPackageImpl
DGIWG (Defence Geospatial Information Working Group) GeoPackage implementation
Since:
6.7.0
  • Constructor Details

    • DGIWGGeoPackage

      public DGIWGGeoPackage(GeoPackage geoPackage)
      Constructor
      Parameters:
      geoPackage - GeoPackage
  • Method Details

    • getFile

      public GeoPackageFile getFile()
      Get the DGIWG file
      Returns:
      DGIWG file
    • getFileName

      public GeoPackageFileName getFileName()
      Get the DGIWG file name
      Returns:
      DGIWG file name
    • isValid

      public boolean isValid()
      Is the GeoPackage valid according to the DGIWG GeoPackage Profile
      Returns:
      true if valid
    • validate

      public DGIWGValidationErrors validate()
      Validate the GeoPackage against the DGIWG GeoPackage Profile
      Returns:
      validation errors
    • getErrors

      public DGIWGValidationErrors getErrors()
      Get the most recent validate() results
      Returns:
      validation errors, null if not yet validated
    • validate

      public DGIWGValidationErrors validate(String table)
      Validate the GeoPackage table against the DGIWG GeoPackage Profile
      Parameters:
      table - table
      Returns:
      validation errors
    • validate

      public DGIWGValidationErrors validate(List<String> tables)
      Validate the GeoPackage tables against the DGIWG GeoPackage Profile
      Parameters:
      tables - tables
      Returns:
      validation errors
    • createTiles

      public TileMatrixSet createTiles(String table, CoordinateReferenceSystem crs)
      Create tiles table
      Parameters:
      table - table name
      crs - coordinate reference system
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, CoordinateReferenceSystem crs)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      crs - coordinate reference system
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, BoundingBox informativeBounds, CoordinateReferenceSystem crs)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      informativeBounds - informative contents bounds
      crs - coordinate reference system
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, CoordinateReferenceSystem crs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      crs - coordinate reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, CoordinateReferenceSystem crs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      crs - coordinate reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, BoundingBox informativeBounds, CoordinateReferenceSystem crs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      informativeBounds - informative contents bounds
      crs - coordinate reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, SpatialReferenceSystem srs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      srs - spatial reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, SpatialReferenceSystem srs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      srs - spatial reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTiles

      public TileMatrixSet createTiles(String table, String identifier, String description, BoundingBox informativeBounds, SpatialReferenceSystem srs, BoundingBox extentBounds)
      Create tiles table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      informativeBounds - informative contents bounds
      srs - spatial reference system
      extentBounds - crs extent bounds
      Returns:
      created tile matrix set
    • createTileMatrices

      public void createTileMatrices(TileMatrixSet tileMatrixSet, long minZoom, long maxZoom, long matrixWidth, long matrixHeight)
      Create tile matrices for zoom levels
      Parameters:
      tileMatrixSet - tile matrix set
      minZoom - min zoom level
      maxZoom - max zoom level
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrices

      public void createTileMatrices(String table, BoundingBox boundingBox, long minZoom, long maxZoom, long matrixWidth, long matrixHeight)
      Create tile matrices for zoom levels
      Parameters:
      table - table name
      boundingBox - bounding box
      minZoom - min zoom level
      maxZoom - max zoom level
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrices

      public void createTileMatrices(TileMatrixSet tileMatrixSet, Collection<Long> zoomLevels, long matrixWidth, long matrixHeight)
      Create tile matrices for zoom levels
      Parameters:
      tileMatrixSet - tile matrix set
      zoomLevels - zoom levels
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrices

      public void createTileMatrices(String table, BoundingBox boundingBox, Collection<Long> zoomLevels, long matrixWidth, long matrixHeight)
      Create tile matrices for zoom levels
      Parameters:
      table - table name
      boundingBox - bounding box
      zoomLevels - zoom levels
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrix

      public void createTileMatrix(TileMatrixSet tileMatrixSet, long zoom, long matrixWidth, long matrixHeight)
      Create a tile matrix for a zoom level
      Parameters:
      tileMatrixSet - tile matrix set
      zoom - zoom level
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrix

      public void createTileMatrix(String table, BoundingBox boundingBox, long zoom, long matrixWidth, long matrixHeight)
      Create a tile matrix for a zoom level
      Parameters:
      table - table name
      boundingBox - bounding box
      zoom - zoom level
      matrixWidth - matrix width
      matrixHeight - matrix height
    • createTileMatrix

      public void createTileMatrix(String table, long zoom, long matrixWidth, long matrixHeight, double pixelXSize, double pixelYSize)
      Create a tile matrix for a zoom level
      Parameters:
      table - table name
      zoom - zoom level
      matrixWidth - matrix width
      matrixHeight - matrix height
      pixelXSize - pixel x size
      pixelYSize - pixel y size
    • createFeatures

      public GeometryColumns createFeatures(String table, GeometryType geometryType, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      geometryType - geometry type
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, GeometryType geometryType, List<FeatureColumn> columns, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      geometryType - geometry type
      columns - feature columns
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, GeometryType geometryType, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      geometryType - geometry type
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, GeometryType geometryType, List<FeatureColumn> columns, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      geometryType - geometry type
      columns - feature columns
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, BoundingBox bounds, GeometryType geometryType, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      bounds - contents bounds
      geometryType - geometry type
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, BoundingBox bounds, GeometryType geometryType, List<FeatureColumn> columns, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      bounds - contents bounds
      geometryType - geometry type
      columns - feature columns
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, BoundingBox bounds, GeometryType geometryType, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      bounds - contents bounds
      geometryType - geometry type
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, BoundingBox bounds, GeometryType geometryType, List<FeatureColumn> columns, CoordinateReferenceSystem crs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      bounds - contents bounds
      geometryType - geometry type
      columns - feature columns
      crs - coordinate reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, BoundingBox bounds, GeometryType geometryType, DataType dataType, SpatialReferenceSystem srs)
      Create features table
      Parameters:
      table - table name
      bounds - contents bounds
      geometryType - geometry type
      dataType - data type
      srs - spatial reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, BoundingBox bounds, GeometryType geometryType, DataType dataType, List<FeatureColumn> columns, SpatialReferenceSystem srs)
      Create features table
      Parameters:
      table - table name
      bounds - contents bounds
      geometryType - geometry type
      dataType - data type
      columns - feature columns
      srs - spatial reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, BoundingBox bounds, GeometryType geometryType, DataType dataType, SpatialReferenceSystem srs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      bounds - contents bounds
      geometryType - geometry type
      dataType - data type
      srs - spatial reference system
      Returns:
      created geometry columns
    • createFeatures

      public GeometryColumns createFeatures(String table, String identifier, String description, BoundingBox bounds, GeometryType geometryType, DataType dataType, List<FeatureColumn> columns, SpatialReferenceSystem srs)
      Create features table
      Parameters:
      table - table name
      identifier - contents identifier
      description - contents description
      bounds - contents bounds
      geometryType - geometry type
      dataType - data type
      columns - feature columns
      srs - spatial reference system
      Returns:
      created geometry columns
    • createMetadata

      public void createMetadata(Metadata metadata, MetadataReference reference)
      Create metadata and metadata reference
      Parameters:
      metadata - metadata
      reference - metadata reference
    • createMetadata

      public void createMetadata(Metadata metadata)
      Create metadata
      Parameters:
      metadata - metadata
    • createMetadataReference

      public void createMetadataReference(Metadata metadata, MetadataReference reference)
      Create metadata reference
      Parameters:
      metadata - the reference metadata
      reference - metadata reference
    • createMetadataReference

      public void createMetadataReference(MetadataReference reference)
      Create metadata reference
      Parameters:
      reference - metadata reference
    • createGeoPackageSeriesMetadata

      public MetadataReference createGeoPackageSeriesMetadata(String uri, String metadata)
      Create GeoPackage metadata with a series scope and metadata reference
      Parameters:
      uri - URI
      metadata - metadata
      Returns:
      metadata reference
    • createGeoPackageDatasetMetadata

      public MetadataReference createGeoPackageDatasetMetadata(String uri, String metadata)
      Create GeoPackage metadata with a dataset scope and metadata reference
      Parameters:
      uri - URI
      metadata - metadata
      Returns:
      metadata reference
    • createGeoPackageMetadata

      public MetadataReference createGeoPackageMetadata(MetadataScopeType scope, String uri, String metadata)
      Create GeoPackage metadata and metadata reference
      Parameters:
      scope - metadata scope type
      uri - URI
      metadata - metadata
      Returns:
      metadata reference
    • createMetadata

      public MetadataReference createMetadata(MetadataScopeType scope, String uri, String metadata, MetadataReference reference)
      Create metadata and metadata reference
      Parameters:
      scope - metadata scope type
      uri - URI
      metadata - metadata
      reference - metadata reference
      Returns:
      metadata reference
    • queryGeoPackageDMFMetadata

      public List<MetadataReference> queryGeoPackageDMFMetadata()
      Query for GeoPackage DGIWG Metadata Foundation (DMF) metadata
      Returns:
      metadata references
    • queryGeoPackageNASMetadata

      public List<MetadataReference> queryGeoPackageNASMetadata()
      Query for GeoPackage NSG Metadata Foundation (NMF) NSG Application Schema (NAS) metadata
      Returns:
      metadata references
    • queryGeoPackageMetadata

      public List<MetadataReference> queryGeoPackageMetadata(String baseURI)
      Query for GeoPackage metadata
      Parameters:
      baseURI - base URI
      Returns:
      metadata references