Class UrlTileGenerator


  • public class UrlTileGenerator
    extends TileGenerator
    Creates a set of tiles within a GeoPackage by downloading the tiles from a URL
    Since:
    1.1.2
    Author:
    osbornb
    • Constructor Detail

      • UrlTileGenerator

        public UrlTileGenerator​(GeoPackage geoPackage,
                                String tableName,
                                String tileUrl,
                                BoundingBox boundingBox,
                                Projection projection)
        Constructor
        Parameters:
        geoPackage - GeoPackage
        tableName - table name
        tileUrl - tile URL
        boundingBox - tiles bounding box
        projection - tiles projection
        Since:
        6.2.0
      • UrlTileGenerator

        public UrlTileGenerator​(GeoPackage geoPackage,
                                String tableName,
                                String tileUrl,
                                int zoomLevel,
                                BoundingBox boundingBox,
                                Projection projection)
        Constructor
        Parameters:
        geoPackage - GeoPackage
        tableName - table name
        tileUrl - tile URL
        zoomLevel - zoom level
        boundingBox - tiles bounding box
        projection - tiles projection
        Since:
        6.2.0
      • UrlTileGenerator

        public UrlTileGenerator​(GeoPackage geoPackage,
                                String tableName,
                                String tileUrl,
                                int minZoom,
                                int maxZoom,
                                BoundingBox boundingBox,
                                Projection projection)
        Constructor
        Parameters:
        geoPackage - GeoPackage
        tableName - table name
        tileUrl - tile URL
        minZoom - min zoom
        maxZoom - max zoom
        boundingBox - tiles bounding box
        projection - tiles projection
        Since:
        1.2.0
      • UrlTileGenerator

        public UrlTileGenerator​(GeoPackage geoPackage,
                                String tableName,
                                String tileUrl,
                                Collection<Integer> zoomLevels,
                                BoundingBox boundingBox,
                                Projection projection)
        Constructor
        Parameters:
        geoPackage - GeoPackage
        tableName - table name
        tileUrl - tile URL
        zoomLevels - zoom levels
        boundingBox - tiles bounding box
        projection - tiles projection
        Since:
        6.2.0
      • UrlTileGenerator

        public UrlTileGenerator​(GeoPackage geoPackage,
                                String tableName,
                                String tileUrl,
                                int[] zoomLevels,
                                BoundingBox boundingBox,
                                Projection projection)
        Constructor
        Parameters:
        geoPackage - GeoPackage
        tableName - table name
        tileUrl - tile URL
        zoomLevels - zoom levels
        boundingBox - tiles bounding box
        projection - tiles projection
        Since:
        6.2.0
    • Method Detail

      • getTileFormat

        public TileFormatType getTileFormat()
        Get the tile format
        Returns:
        tile format
      • setTileFormat

        public void setTileFormat​(TileFormatType tileFormat)
        Set the tile format
        Parameters:
        tileFormat - tile format
      • getDownloadAttempts

        public int getDownloadAttempts()
        Get the number of download attempts per tile
        Returns:
        download attempts
      • setDownloadAttempts

        public void setDownloadAttempts​(int downloadAttempts)
        Set the number of download attempts per tile
        Parameters:
        downloadAttempts - download attempts per tile
      • getHttpMethod

        public String getHttpMethod()
        Get the HTTP request method, when null default is "GET"
        Returns:
        method
      • setHttpMethod

        public void setHttpMethod​(String httpMethod)
        Set the HTTP request method
        Parameters:
        httpMethod - method ("GET", "POST")
      • getHttpHeader

        public Map<String,​List<String>> getHttpHeader()
        Get the HTTP Header fields and field values
        Returns:
        header map
      • getHttpHeaderValues

        public List<String> getHttpHeaderValues​(String field)
        Get the HTTP Header field values
        Parameters:
        field - field name
        Returns:
        field values
      • addHTTPHeaderValue

        public void addHTTPHeaderValue​(String field,
                                       String value)
        Add a HTTP Header field value, appending to any existing values for the field
        Parameters:
        field - field name
        value - field value
      • addHTTPHeaderValues

        public void addHTTPHeaderValues​(String field,
                                        List<String> values)
        Add HTTP Header field values, appending to any existing values for the field
        Parameters:
        field - field name
        values - field values
      • preTileGeneration

        protected void preTileGeneration()
        Called after set up and right before tile generation starts for the first zoom level
        Specified by:
        preTileGeneration in class TileGenerator
      • createTile

        protected byte[] createTile​(int z,
                                    long x,
                                    long y)
        Create the tile
        Specified by:
        createTile in class TileGenerator
        Parameters:
        z - zoom level
        x - x coordinate
        y - y coordinate
        Returns:
        tile bytes