Mercurial > gemma
view pkg/wfs/rawfeaturecollection.go @ 4405:7657640f0c8d
Gracefully handle existing default login roles
If multiple databases are created in the same PostgreSQL cluster,
existing roles are now properly re-used. This also fixes running
database tests on a cluster that already has these roles, which
was broken since rev. 5e38667f740c, because it silently fixed a test
for existance of roles that failed if proper creation of the
role 'sysadmin' failed during setup of the test database.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Mon, 16 Sep 2019 19:58:13 +0200 |
parents | 6caf5cd6249e |
children |
line wrap: on
line source
// This is Free Software under GNU Affero General Public License v >= 3.0 // without warranty, see README.md and license for details. // // SPDX-License-Identifier: AGPL-3.0-or-later // License-Filename: LICENSES/AGPL-3.0.txt // // Copyright (C) 2018 by via donau // – Österreichische Wasserstraßen-Gesellschaft mbH // Software engineering by Intevation GmbH // // Author(s): // * Sascha L. Teichmann <sascha.teichmann@intevation.de> package wfs import ( "encoding/json" "io" ) // RawFeatureCollection is a template for a feature collection // returned by a WFS server. type RawFeatureCollection struct { CRS *struct { Properties struct { Name string `json:"name"` } `json:"properties"` } `json:"crs"` Features []*struct { Geometry struct { Coordinates *json.RawMessage `json:"coordinates"` Type string `json:"type"` } `json:"geometry"` Properties *json.RawMessage `json:"properties"` } `json:"features"` } // ParseRawFeatureCollection turns a io.Reader into raw feature collection. func ParseRawFeatureCollection(r io.Reader) (*RawFeatureCollection, error) { rfc := new(RawFeatureCollection) if err := json.NewDecoder(r).Decode(rfc); err != nil { return nil, err } return rfc, nil }