diff options
Diffstat (limited to 'src/ncm/api')
-rw-r--r-- | src/ncm/api/networkhandler.go | 9 | ||||
-rw-r--r-- | src/ncm/api/providernethandler.go | 8 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/ncm/api/networkhandler.go b/src/ncm/api/networkhandler.go index ed266697..6f305be1 100644 --- a/src/ncm/api/networkhandler.go +++ b/src/ncm/api/networkhandler.go @@ -30,6 +30,9 @@ import ( "github.com/gorilla/mux" ) +var vnJSONFile string = "json-schemas/virtual-network.json" + + // Used to store backend implementations objects // Also simplifies mocking for unit testing purposes type networkHandler struct { @@ -86,6 +89,12 @@ func (h networkHandler) createNetworkHandler(w http.ResponseWriter, r *http.Requ return } + err, httpError := validation.ValidateJsonSchemaData(vnJSONFile, p) +if err != nil { + http.Error(w, err.Error(), httpError) + return +} + // Name is required. if p.Metadata.Name == "" { http.Error(w, "Missing name in POST request", http.StatusBadRequest) diff --git a/src/ncm/api/providernethandler.go b/src/ncm/api/providernethandler.go index 66a41a4d..48d5d7ea 100644 --- a/src/ncm/api/providernethandler.go +++ b/src/ncm/api/providernethandler.go @@ -31,6 +31,8 @@ import ( "github.com/gorilla/mux" ) +var pnetJSONFile string = "json-schemas/provider-network.json" + // Used to store backend implementations objects // Also simplifies mocking for unit testing purposes type providernetHandler struct { @@ -139,6 +141,12 @@ func (h providernetHandler) createProviderNetHandler(w http.ResponseWriter, r *h return } + err, httpError := validation.ValidateJsonSchemaData(pnetJSONFile, p) +if err != nil { + http.Error(w, err.Error(), httpError) + return +} + // Name is required. if p.Metadata.Name == "" { http.Error(w, "Missing name in POST request", http.StatusBadRequest) |