diff options
Diffstat (limited to 'src/orchestrator/api/generic_placement_intent_handler.go')
-rw-r--r-- | src/orchestrator/api/generic_placement_intent_handler.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/orchestrator/api/generic_placement_intent_handler.go b/src/orchestrator/api/generic_placement_intent_handler.go index e186735c..02dbf0be 100644 --- a/src/orchestrator/api/generic_placement_intent_handler.go +++ b/src/orchestrator/api/generic_placement_intent_handler.go @@ -21,6 +21,7 @@ import ( "io" "net/http" + "github.com/onap/multicloud-k8s/src/orchestrator/pkg/infra/validation" moduleLib "github.com/onap/multicloud-k8s/src/orchestrator/pkg/module" "github.com/gorilla/mux" @@ -113,6 +114,31 @@ func (h genericPlacementIntentHandler) getGenericPlacementHandler(w http.Respons } } +func (h genericPlacementIntentHandler) getAllGenericPlacementIntentsHandler(w http.ResponseWriter, r *http.Request) { + vars := mux.Vars(r) + pList := []string{"project-name", "composite-app-name", "composite-app-version"} + err := validation.IsValidParameterPresent(vars, pList) + if err != nil { + http.Error(w, err.Error(), http.StatusBadRequest) + } + p := vars["project-name"] + ca := vars["composite-app-name"] + v := vars["composite-app-version"] + + gpList, err := h.client.GetAllGenericPlacementIntents(p, ca, v) + if err != nil { + http.Error(w, err.Error(), http.StatusNotFound) + return + } + w.Header().Set("Content-Type", "application/json") + w.WriteHeader(http.StatusOK) + err = json.NewEncoder(w).Encode(gpList) + if err != nil { + http.Error(w, err.Error(), http.StatusNotFound) + return + } +} + // deleteGenericPlacementHandler handles the delete operations on intent func (h genericPlacementIntentHandler) deleteGenericPlacementHandler(w http.ResponseWriter, r *http.Request) { vars := mux.Vars(r) |