Mercurial > gemma
view cmd/wfs/main.go @ 2152:8132434f4093
Surveys controller: Fixed nullable water level.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 08 Feb 2019 11:47:31 +0100 |
parents | 92da44ba610c |
children | 02505fcff63c |
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 main import ( "flag" "log" "gemma.intevation.de/gemma/pkg/wfs" ) func check(err error) { if err != nil { log.Fatalf("error: %v\n", err) } } func main() { var ( dumpCaps = flag.Bool("dump-caps", false, "Dump capabilities document") dumpFeatures = flag.Bool("dump-features", false, "Dump features") featureType = flag.String("features", "", "feature to get") sortBy = flag.String("sortby", "", "Sort features by this property") ) flag.Parse() for _, arg := range flag.Args() { caps, err := wfs.GetCapabilities(arg) check(err) if *dumpCaps { dump(caps) } if *featureType == "" { continue } feature := caps.FindFeatureType(*featureType) if feature == nil { log.Fatalf("Unknown feature type '%s'\n", *featureType) } urls, err := wfs.GetFeaturesGET( caps, *featureType, "application/json", *sortBy) check(err) log.Printf("urls: %v\n", urls) if *dumpFeatures { check(dumpURLs(urls)) } parseFeatures(urls, feature.DefaultCRS) } }