Mercurial > gemma
view cmd/wfs/main.go @ 2663:386ff766dfcd import-overview-rework
Replaced limit/offset filters with from/to as timestamps (format '2006-01-02T15:04:05.000').The output document also contains 'prev' and 'next' fields (if there is any matching data) from the times before and after 'from' and 'to'.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Thu, 14 Mar 2019 12:44:35 +0100 |
parents | 02505fcff63c |
children | 3956de9b6b32 |
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, wfs.FormatGeoJSON, *sortBy) check(err) log.Printf("urls: %v\n", urls) if *dumpFeatures { check(dumpURLs(urls)) } parseFeatures(urls, feature.DefaultCRS) } }