Mercurial > gemma
changeset 2106:2b72f5e005aa
WFS imports: Write get GetFeature URLs into import log.
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 04 Feb 2019 15:49:17 +0100 |
parents | 58a28715e386 |
children | 6747a4cf3639 |
files | cmd/wfs/dump.go pkg/imports/dma.go pkg/imports/fd.go pkg/imports/wa.go pkg/imports/wp.go pkg/imports/wx.go pkg/wfs/download.go |
diffstat | 7 files changed, 17 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/cmd/wfs/dump.go Mon Feb 04 15:39:58 2019 +0100 +++ b/cmd/wfs/dump.go Mon Feb 04 15:49:17 2019 +0100 @@ -26,7 +26,8 @@ func parseFeatures(urls []string, defaultCRS string) error { - return wfs.DownloadURLs(urls, func(r io.Reader) error { + return wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + log.Printf("Get features from: '%s'\n", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return err @@ -61,7 +62,8 @@ func dumpURLs(urls []string) error { out := bufio.NewWriter(os.Stdout) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + log.Printf("Get features from: '%s'\n", url) _, err := io.Copy(out, r) return err }); err != nil {
--- a/pkg/imports/dma.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/imports/dma.go Mon Feb 04 15:49:17 2019 +0100 @@ -176,7 +176,8 @@ features int ) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + feedback.Info("Get features from: '%s'", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return fmt.Errorf("parsing GetFeature document failed: %v", err)
--- a/pkg/imports/fd.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/imports/fd.go Mon Feb 04 15:49:17 2019 +0100 @@ -226,7 +226,8 @@ fds []fdSummary ) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + feedback.Info("Get features from: '%s'", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return fmt.Errorf("parsing GetFeature document failed: %v", err)
--- a/pkg/imports/wa.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/imports/wa.go Mon Feb 04 15:49:17 2019 +0100 @@ -183,7 +183,8 @@ features int ) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + feedback.Info("Get features from: '%s'", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return fmt.Errorf("parsing GetFeature document failed: %v", err)
--- a/pkg/imports/wp.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/imports/wp.go Mon Feb 04 15:49:17 2019 +0100 @@ -248,7 +248,8 @@ features int ) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + feedback.Info("Get features from: '%s'", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return fmt.Errorf("parsing GetFeature document failed: %v", err)
--- a/pkg/imports/wx.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/imports/wx.go Mon Feb 04 15:49:17 2019 +0100 @@ -183,7 +183,8 @@ features int ) - if err := wfs.DownloadURLs(urls, func(r io.Reader) error { + if err := wfs.DownloadURLs(urls, func(url string, r io.Reader) error { + feedback.Info("Get features from: '%s'", url) rfc, err := wfs.ParseRawFeatureCollection(r) if err != nil { return fmt.Errorf("parsing GetFeature document failed: %v", err)
--- a/pkg/wfs/download.go Mon Feb 04 15:39:58 2019 +0100 +++ b/pkg/wfs/download.go Mon Feb 04 15:49:17 2019 +0100 @@ -246,7 +246,7 @@ return downloadURLs, nil } -func downloadURL(url string, handler func(io.Reader) error) error { +func downloadURL(url string, handler func(string, io.Reader) error) error { resp, err := http.Get(url) if err != nil { return err @@ -256,12 +256,12 @@ resp.StatusCode, resp.Status) } defer resp.Body.Close() - return handler(resp.Body) + return handler(url, resp.Body) } // DownloadURLs does the actual GetFeature requests downloads // and hands the resulting io.Readers over to the given handler. -func DownloadURLs(urls []string, handler func(io.Reader) error) error { +func DownloadURLs(urls []string, handler func(string, io.Reader) error) error { for _, url := range urls { if err := downloadURL(url, handler); err != nil { return err