1616package handlers
1717
1818import (
19- "fmt"
20-
2119 "github.com/go-openapi/runtime/middleware"
2220 client_native "github.com/haproxytech/client-native/v2"
2321 "github.com/haproxytech/dataplaneapi/misc"
2422 "github.com/haproxytech/dataplaneapi/operations/maps"
25- "github.com/haproxytech/models/v2"
2623)
2724
2825//MapsCreateRuntimeMapHandlerImpl implementation of the MapsCreateRuntimeMapHandler interface using client-native client
@@ -39,8 +36,8 @@ func (h *MapsCreateRuntimeMapHandlerImpl) Handle(params maps.CreateRuntimeMapPar
3936
4037 me , err := h .Client .Runtime .CreateMap (file , * header )
4138 if err != nil {
42- e := misc .HandleError (err )
43- return maps .NewCreateRuntimeMapDefault (int ( * e . Code )) .WithPayload (e )
39+ status := misc .GetHTTPStatusFromErr (err )
40+ return maps .NewCreateRuntimeMapDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
4441 }
4542 return maps .NewCreateRuntimeMapCreated ().WithPayload (me )
4643}
@@ -54,8 +51,8 @@ type GetMapsHandlerImpl struct {
5451func (h * GetMapsHandlerImpl ) Handle (params maps.GetAllRuntimeMapFilesParams , principal interface {}) middleware.Responder {
5552 mapFiles , err := h .Client .Runtime .ShowMaps ()
5653 if err != nil {
57- e := misc .HandleError (err )
58- return maps .NewShowRuntimeMapDefault (int ( * e . Code )) .WithPayload (e )
54+ status := misc .GetHTTPStatusFromErr (err )
55+ return maps .NewShowRuntimeMapDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
5956 }
6057 return maps .NewGetAllRuntimeMapFilesOK ().WithPayload (mapFiles )
6158}
@@ -68,8 +65,8 @@ type GetMapHandlerImpl struct {
6865func (h * GetMapHandlerImpl ) Handle (params maps.GetOneRuntimeMapParams , principal interface {}) middleware.Responder {
6966 m , err := h .Client .Runtime .GetMap (params .Name )
7067 if err != nil {
71- e := misc .HandleError (err )
72- return maps .NewGetOneRuntimeMapDefault (int ( * e . Code )) .WithPayload (e )
68+ status := misc .GetHTTPStatusFromErr (err )
69+ return maps .NewGetOneRuntimeMapDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
7370 }
7471 if m == nil {
7572 return maps .NewGetOneRuntimeMapNotFound ()
@@ -89,8 +86,8 @@ func (h *ClearMapHandlerImpl) Handle(params maps.ClearRuntimeMapParams, principa
8986 }
9087 err := h .Client .Runtime .ClearMap (params .Name , forceDelete )
9188 if err != nil {
92- e := misc .HandleError (err )
93- return maps .NewClearRuntimeMapDefault (int ( * e . Code )) .WithPayload (e )
89+ status := misc .GetHTTPStatusFromErr (err )
90+ return maps .NewClearRuntimeMapDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
9491 }
9592 return maps .NewClearRuntimeMapNoContent ()
9693}
@@ -103,8 +100,8 @@ type ShowMapHandlerImpl struct {
103100func (h * ShowMapHandlerImpl ) Handle (params maps.ShowRuntimeMapParams , principal interface {}) middleware.Responder {
104101 m , err := h .Client .Runtime .ShowMapEntries (params .Map )
105102 if err != nil {
106- e := misc .HandleError (err )
107- return maps .NewShowRuntimeMapDefault (int ( * e . Code )) .WithPayload (e )
103+ status := misc .GetHTTPStatusFromErr (err )
104+ return maps .NewShowRuntimeMapDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
108105 }
109106 if m == nil {
110107 return maps .NewShowRuntimeMapNotFound ()
@@ -118,21 +115,10 @@ type AddMapEntryHandlerImpl struct {
118115}
119116
120117func (h * AddMapEntryHandlerImpl ) Handle (params maps.AddMapEntryParams , principal interface {}) middleware.Responder {
121- e , _ := h .Client .Runtime .GetMapEntry (params .Map , params .Data .Key )
122- if e != nil {
123- msg := fmt .Sprintf ("Entry with key %s already exists!" , params .Data .Key )
124- c := misc .ErrHTTPConflict
125- err := & models.Error {
126- Message : & msg ,
127- Code : & c ,
128- }
129- return maps .NewAddMapEntryDefault (maps .AddMapEntryConflictCode ).WithPayload (err )
130- }
131-
132118 err := h .Client .Runtime .AddMapEntry (params .Map , params .Data .Key , params .Data .Value )
133119 if err != nil {
134- e := misc .HandleError (err )
135- return maps .NewAddMapEntryDefault (int ( * e . Code )) .WithPayload (e )
120+ status := misc .GetHTTPStatusFromErr (err )
121+ return maps .NewAddMapEntryDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
136122 }
137123 return maps .NewAddMapEntryCreated ().WithPayload (params .Data )
138124}
@@ -145,8 +131,8 @@ type GetRuntimeMapEntryHandlerImpl struct {
145131func (h * GetRuntimeMapEntryHandlerImpl ) Handle (params maps.GetRuntimeMapEntryParams , principal interface {}) middleware.Responder {
146132 m , err := h .Client .Runtime .GetMapEntry (params .Map , params .ID )
147133 if err != nil {
148- e := misc .HandleError (err )
149- return maps .NewGetRuntimeMapEntryDefault (int ( * e . Code )) .WithPayload (e )
134+ status := misc .GetHTTPStatusFromErr (err )
135+ return maps .NewGetRuntimeMapEntryDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
150136 }
151137 if m == nil {
152138 return maps .NewGetRuntimeMapEntryNotFound ()
@@ -162,8 +148,8 @@ type ReplaceRuntimeMapEntryHandlerImpl struct {
162148func (h * ReplaceRuntimeMapEntryHandlerImpl ) Handle (params maps.ReplaceRuntimeMapEntryParams , principal interface {}) middleware.Responder {
163149 err := h .Client .Runtime .SetMapEntry (params .Map , params .ID , * params .Data .Value )
164150 if err != nil {
165- e := misc .HandleError (err )
166- return maps .NewGetRuntimeMapEntryDefault (int ( * e . Code )) .WithPayload (e )
151+ status := misc .GetHTTPStatusFromErr (err )
152+ return maps .NewGetRuntimeMapEntryDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
167153 }
168154
169155 e , err := h .Client .Runtime .GetMapEntry (params .Map , params .ID )
@@ -181,8 +167,8 @@ type DeleteRuntimeMapEntryHandlerImpl struct {
181167func (h * DeleteRuntimeMapEntryHandlerImpl ) Handle (params maps.DeleteRuntimeMapEntryParams , principal interface {}) middleware.Responder {
182168 err := h .Client .Runtime .DeleteMapEntry (params .Map , params .ID )
183169 if err != nil {
184- e := misc .HandleError (err )
185- return maps .NewDeleteRuntimeMapEntryDefault (int ( * e . Code )) .WithPayload (e )
170+ status := misc .GetHTTPStatusFromErr (err )
171+ return maps .NewDeleteRuntimeMapEntryDefault (status ) .WithPayload (misc . SetError ( status , err . Error ()) )
186172 }
187173 return maps .NewDeleteRuntimeMapEntryNoContent ()
188174}
0 commit comments