From c34babeaf8eae8c3c3095ff10178a004cb2d8642 Mon Sep 17 00:00:00 2001 From: "Stanislav N. aka pztrn" Date: Wed, 23 Dec 2020 13:45:33 +0500 Subject: [PATCH] Add metric type to metric struct. --- internal/application/parser.go | 2 +- internal/models/metric.go | 5 ++++- internal/storage/memory/memory.go | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/application/parser.go b/internal/application/parser.go index 1bfc670..48a0142 100644 --- a/internal/application/parser.go +++ b/internal/application/parser.go @@ -48,7 +48,7 @@ func (a *Application) parse(body string) map[string]models.Metric { } } - metric := models.NewMetric(name, "", params) + metric := models.NewMetric(name, "", "", params) metric.SetValue(value) data[name] = metric diff --git a/internal/models/metric.go b/internal/models/metric.go index 6a08988..e2598a2 100644 --- a/internal/models/metric.go +++ b/internal/models/metric.go @@ -8,15 +8,18 @@ type Metric struct { Description string // Additional parameters, data inside "{}". Params []string + // Type is a metric type. + Type string // Metric value. Value string } // NewMetric creates new structure for storing single metric data. -func NewMetric(name, description string, params []string) Metric { +func NewMetric(name, mType, description string, params []string) Metric { m := Metric{ Name: name, Description: description, + Type: mType, Params: params, } diff --git a/internal/storage/memory/memory.go b/internal/storage/memory/memory.go index ce2ce57..9aac1ea 100644 --- a/internal/storage/memory/memory.go +++ b/internal/storage/memory/memory.go @@ -40,7 +40,7 @@ func (s *Storage) Get(key string) (models.Metric, error) { data, found := s.data[key] if !found { - return models.NewMetric("", "", nil), ErrMetricNotFound + return models.NewMetric("", "", "", nil), ErrMetricNotFound } return data, nil