From 2a756282a4997081a73544a9af6dc59571f0c466 Mon Sep 17 00:00:00 2001 From: Mikhail Osipov Date: Fri, 18 Sep 2020 22:57:52 +0300 Subject: human readable time info about streams --- pkg/server/env/env.go | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'pkg/server/env') diff --git a/pkg/server/env/env.go b/pkg/server/env/env.go index 98ee231..b75d9a8 100644 --- a/pkg/server/env/env.go +++ b/pkg/server/env/env.go @@ -73,7 +73,7 @@ func (e Env) Has(key string) bool { return ok } -func (e Env) Set(key string, value string) error { +func validKeyValue(key string, value string) error { if !isGoodName(key) { return errBadVariable } @@ -82,6 +82,14 @@ func (e Env) Set(key string, value string) error { return errEmptyVariable } + return nil +} + +func (e Env) Set(key string, value string) error { + if err := validKeyValue(key, value); err != nil { + return err + } + e.Lock() defer e.Unlock() @@ -92,6 +100,25 @@ func (e Env) Set(key string, value string) error { return nil } +func (e Env) Push(key string, value string) error { + if err := validKeyValue(key, value); err != nil { + return err + } + + e.Lock() + defer e.Unlock() + + e.init() + + if old, ok := e.m[key]; ok { + e.m[key] = old + "," + value + } else { + e.m[key] = value + } + + return nil +} + func (e *env) Del(key string) bool { e.Lock() defer e.Unlock() -- cgit v1.2.3-70-g09d2