# HG changeset patch # User Sascha L. Teichmann # Date 1542890249 -3600 # Node ID 5aeda02c51b9fa8258fec6faa08106c89f00140d # Parent e9fb72fa6baeaa9b0b1e01df4d03b8a851432ade Sounding result import: Don't fail if an import ZIP does not contain an meta.json but has a full set of overrides. diff -r e9fb72fa6bae -r 5aeda02c51b9 pkg/imports/sr.go --- a/pkg/imports/sr.go Thu Nov 22 13:15:48 2018 +0100 +++ b/pkg/imports/sr.go Thu Nov 22 13:37:29 2018 +0100 @@ -178,7 +178,7 @@ feedback.Info("Looking for 'meta.json'") mf := common.FindInZIP(z, "meta.json") - if mf == nil { + if mf == nil && !sr.completeOverride() { return errors.New("Cannot find 'meta.json'") } @@ -298,7 +298,19 @@ return os.RemoveAll(sr.Dir) } +func (sr *SoundingResult) completeOverride() bool { + return sr.EPSG != nil && sr.Bottleneck != nil && sr.Date != nil && sr.DepthReference != nil +} + func (sr *SoundingResult) loadMeta(f *zip.File) (*models.SoundingResultMeta, error) { + if f == nil { + return &models.SoundingResultMeta{ + Date: *sr.Date, + Bottleneck: *sr.Bottleneck, + EPSG: *sr.EPSG, + DepthReference: *sr.DepthReference, + }, nil + } r, err := f.Open() if err != nil { return nil, err