diff pkg/common/zip.go @ 1225:4d7c44f7044e

Factored out som zip lookup code to be reusable in sounding result upload controller.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 19 Nov 2018 17:28:35 +0100
parents
children 6a021108410b
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkg/common/zip.go	Mon Nov 19 17:28:35 2018 +0100
@@ -0,0 +1,29 @@
+// 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 common
+
+import (
+	"archive/zip"
+	"strings"
+)
+
+func FindInZIP(z *zip.ReadCloser, needle string) *zip.File {
+	needle = strings.ToLower(needle)
+	for _, straw := range z.File {
+		if strings.HasSuffix(strings.ToLower(straw.Name), needle) {
+			return straw
+		}
+	}
+	return nil
+}