Documentation ¶
Overview ¶
Package server implements the http frontend
Index ¶
- Constants
- Variables
- func Asset(name string) ([]byte, error)
- func AssetDir(name string) ([]string, error)
- func AssetInfo(name string) (os.FileInfo, error)
- func AssetNames() []string
- func MustAsset(name string) []byte
- func RegisterMap(m Map) error
- func RestoreAsset(dir, name string) error
- func RestoreAssets(dir, name string) error
- func Start(port string)
- func TileCacheHandler(next http.Handler) http.Handler
- type Capabilities
- type CapabilitiesLayer
- type CapabilitiesMap
- type HandleCapabilities
- type HandleMapCapabilities
- type HandleMapLayerZXY
- type HandleMapStyle
- type HandleMapZXY
- type Layer
- type Logger
- type Map
Constants ¶
const ( // MaxTileSize is 500k. Currently just throws a warning when tile // is larger than MaxTileSize MaxTileSize = 500000 // MaxZoom will not render tile beyond this zoom level MaxZoom = 20 )
const DefaultLogFormat = "{{.Time}}:{{.RequestIP}} —— Tile:{{.Z}}/{{.X}}/{{.Y}}"
Variables ¶
var ( // set at runtime from main Version string // configurable via the tegola config.toml file HostName string // cache interface to use Cache cache.Interface )
Functions ¶
func Asset ¶ added in v0.4.0
Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetDir ¶ added in v0.4.0
AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:
data/ foo.txt img/ a.png b.png
then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.
func AssetInfo ¶ added in v0.4.0
AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.
func AssetNames ¶ added in v0.4.0
func AssetNames() []string
AssetNames returns the names of the assets.
func MustAsset ¶ added in v0.4.0
MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.
func RestoreAsset ¶ added in v0.4.0
RestoreAsset restores an asset under the given directory
func RestoreAssets ¶ added in v0.4.0
RestoreAssets restores an asset under the given directory recursively
Types ¶
type Capabilities ¶ added in v0.3.0
type Capabilities struct { Version string `json:"version"` Maps []CapabilitiesMap `json:"maps"` }
type CapabilitiesLayer ¶ added in v0.3.0
type CapabilitiesMap ¶ added in v0.3.0
type HandleCapabilities ¶ added in v0.3.0
type HandleCapabilities struct{}
func (HandleCapabilities) ServeHTTP ¶ added in v0.3.0
func (req HandleCapabilities) ServeHTTP(w http.ResponseWriter, r *http.Request)
type HandleMapCapabilities ¶ added in v0.3.1
type HandleMapCapabilities struct {
// contains filtered or unexported fields
}
func (HandleMapCapabilities) ServeHTTP ¶ added in v0.3.1
func (req HandleMapCapabilities) ServeHTTP(w http.ResponseWriter, r *http.Request)
returns details about a map according to the tileJSON spec (https://github.com/mapbox/tilejson-spec/tree/master/2.1.0)
URI scheme: /capabilities/:map_name.json
map_name - map name in the config file
type HandleMapLayerZXY ¶ added in v0.3.1
type HandleMapLayerZXY struct {
// contains filtered or unexported fields
}
func (HandleMapLayerZXY) ServeHTTP ¶ added in v0.3.1
func (req HandleMapLayerZXY) ServeHTTP(w http.ResponseWriter, r *http.Request)
URI scheme: /maps/:map_name/:layer_name/:z/:x/:y map_name - map name in the config file layer_name - name of the single map layer to render z, x, y - tile coordinates as described in the Slippy Map Tilenames specification
z - zoom level x - row y - column
type HandleMapStyle ¶ added in v0.4.0
type HandleMapStyle struct {
// contains filtered or unexported fields
}
func (HandleMapStyle) ServeHTTP ¶ added in v0.4.0
func (req HandleMapStyle) ServeHTTP(w http.ResponseWriter, r *http.Request)
returns details about a map according to the tileJSON spec (https://github.com/mapbox/tilejson-spec/tree/master/2.1.0)
URI scheme: /capabilities/:map_name.json
map_name - map name in the config file
type HandleMapZXY ¶ added in v0.3.1
type HandleMapZXY struct {
// contains filtered or unexported fields
}
func (HandleMapZXY) ServeHTTP ¶ added in v0.3.1
func (req HandleMapZXY) ServeHTTP(w http.ResponseWriter, r *http.Request)
URI scheme: /maps/:map_name/:z/:x/:y map_name - map name in the config file z, x, y - tile coordinates as described in the Slippy Map Tilenames specification
z - zoom level x - row y - column
type Layer ¶
type Layer struct { // optional. if not set, the ProviderLayerName will be used Name string ProviderLayerName string MinZoom int MaxZoom int // instantiated provider Provider mvt.Provider // default tags to include when encoding the layer. provider tags take precedence DefaultTags map[string]interface{} GeomType tegola.Geometry }
type Logger ¶
type Logger struct { File *os.File Format string sync.Mutex // contains filtered or unexported fields }
var L *Logger
type Map ¶ added in v0.3.1
type Map struct { Name string // Contains an attribution to be displayed when the map is shown to a user. // This string is sanatized so it can't be abused as a vector for XSS or beacon tracking. Attribution string // The maximum extent of available map tiles in WGS:84 // latitude and longitude values, in the order left, bottom, right, top. // Default: [-180, -90, 180, 90] Bounds [4]float64 // The first value is the longitude, the second is latitude (both in // WGS:84 values), the third value is the zoom level. Center [3]float64 Layers []Layer }
func (*Map) FilterLayersByName ¶ added in v0.3.1
FilterByName returns a slice with the first layer that matches the provided name the slice return is for convenience. MVT tiles require unique layer names
func (*Map) FilterLayersByZoom ¶ added in v0.3.1
FilterByZoom returns layers that that are to be rendered between a min and max zoom