diff pkg/octree/classbreaks.go @ 4214:49564382ffff

Added a import queue job to recalculate the contour lines of the sounding results if the heights have changed.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Fri, 16 Aug 2019 13:15:34 +0200
parents 37d5c4441c70
children 7a9388943840
line wrap: on
line diff
--- a/pkg/octree/classbreaks.go	Wed Aug 14 17:12:23 2019 +0200
+++ b/pkg/octree/classbreaks.go	Fri Aug 16 13:15:34 2019 +0200
@@ -58,22 +58,9 @@
 	return heights
 }
 
-func LoadClassBreaks(ctx context.Context, tx *sql.Tx, key string) ([]float64, error) {
-
-	var config sql.NullString
-
-	err := tx.QueryRowContext(ctx, selectClassBreaksSQL, key).Scan(&config)
+func ParseClassBreaks(config string) ([]float64, error) {
 
-	switch {
-	case err == sql.ErrNoRows:
-		return nil, nil
-	case err != nil:
-		return nil, err
-	case !config.Valid:
-		return nil, errors.New("Invalid config string")
-	}
-
-	parts := strings.Split(config.String, ",")
+	parts := strings.Split(config, ",")
 	classes := make([]float64, 0, len(parts))
 	for _, part := range parts {
 		if idx := strings.IndexRune(part, ':'); idx >= 0 {
@@ -93,6 +80,24 @@
 	return classes, nil
 }
 
+func LoadClassBreaks(ctx context.Context, tx *sql.Tx, key string) ([]float64, error) {
+
+	var config sql.NullString
+
+	err := tx.QueryRowContext(ctx, selectClassBreaksSQL, key).Scan(&config)
+
+	switch {
+	case err == sql.ErrNoRows:
+		return nil, nil
+	case err != nil:
+		return nil, err
+	case !config.Valid:
+		return nil, errors.New("Invalid config string")
+	}
+
+	return ParseClassBreaks(config.String)
+}
+
 func ExtrapolateClassBreaks(cbs []float64, min, max float64) []float64 {
 	if min > max {
 		min, max = max, min