From 1892bd05a55db9f9d229c48adb1a0688b70e298f Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Mon, 6 Jan 2020 22:22:36 +0000 Subject: [PATCH] only add api endpoint metadata if it exists (#1087) --- api/api.go | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/api/api.go b/api/api.go index 75ffe001..160c2dfd 100644 --- a/api/api.go +++ b/api/api.go @@ -57,14 +57,25 @@ func Encode(e *Endpoint) map[string]string { return nil } - return map[string]string{ - "endpoint": e.Name, - "description": e.Description, - "method": strings.Join(e.Method, ","), - "path": strings.Join(e.Path, ","), - "host": strings.Join(e.Host, ","), - "handler": e.Handler, + // endpoint map + ep := make(map[string]string) + + // set vals only if they exist + set := func(k, v string) { + if len(v) == 0 { + return + } + ep[k] = v } + + set("endpoint", e.Name) + set("description", e.Description) + set("handler", e.Handler) + set("method", strings.Join(e.Method, ",")) + set("path", strings.Join(e.Path, ",")) + set("host", strings.Join(e.Host, ",")) + + return ep } // Decode decodes endpoint metadata into an endpoint