Commit a52673c1 authored by Ikram Haq's avatar Ikram Haq
Browse files

Implement Method to DELETE the individual zones subscriptions

parent d70b34fe
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -168,6 +168,9 @@ func ZoneSubGET(w http.ResponseWriter, r *http.Request) {
	zoneSubGET(w, r)
}

func ZoneSubDELETE(w http.ResponseWriter, r *http.Request) {
	zoneSubDELETE(w, r)
}
func ZonalTrafficSubPOST(w http.ResponseWriter, r *http.Request) {
	zonalTrafficSubPost(w, r)
}
+33 −0
Original line number Diff line number Diff line
@@ -3785,6 +3785,39 @@ func zonalTrafficSubGet(w http.ResponseWriter, r *http.Request) {
	fmt.Fprint(w, string(jsonResponse))
}

func zoneSubDELETE(w http.ResponseWriter, r *http.Request) {
	w.Header().Set("Content-Type", "application/json; charset=UTF-8")
	vars := mux.Vars(r)
	jsonZonalTrafficSub, _ := rc.JSONGetEntry(baseKey+typeZonalSubscription+":"+vars["subscriptionId"], ".")
	jsonZoneStatusSub, _ := rc.JSONGetEntry(baseKey+typeZoneStatusSubscription+":"+vars["subscriptionId"], ".")

	if jsonZonalTrafficSub == "" && jsonZoneStatusSub == "" {
		w.WriteHeader(http.StatusNotFound)
		return
	}

	if jsonZonalTrafficSub != "" {
		err := rc.JSONDelEntry(baseKey+typeZonalSubscription+":"+vars["subscriptionId"], ".")
		if err != nil {
			errHandlerProblemDetails(w, err.Error(), http.StatusInternalServerError)
			return
		}
		deregisterZonal(vars["subscriptionId"])
		w.WriteHeader(http.StatusNoContent)
		return
	}
	if jsonZoneStatusSub != "" {
		err := rc.JSONDelEntry(baseKey+typeZoneStatusSubscription+":"+vars["subscriptionId"], ".")
		if err != nil {
			errHandlerProblemDetails(w, err.Error(), http.StatusInternalServerError)
			return
		}
		deregisterZoneStatus(vars["subscriptionId"])
		w.WriteHeader(http.StatusNoContent)
		return
	}
}

func zoneSubGET(w http.ResponseWriter, r *http.Request) {
	w.Header().Set("Content-Type", "application/json; charset=UTF-8")
	vars := mux.Vars(r)
+9 −2
Original line number Diff line number Diff line
@@ -324,7 +324,7 @@ var routes = Routes{
	},

	Route{
		"ZoneSubListGET",
		"ZoneSubPOST",
		strings.ToUpper("Post"),
		"/location/v2/subscriptions/zones",
		ZoneSubPOST,
@@ -332,11 +332,18 @@ var routes = Routes{

	Route{
		"ZoneSubGET",
		strings.ToUpper("Post"),
		strings.ToUpper("Get"),
		"/location/v2/subscriptions/zones/{subscriptionId}",
		ZoneSubGET,
	},

	Route{
		"ZoneSubDELETE",
		strings.ToUpper("Delete"),
		"/location/v2/subscriptions/zones/{subscriptionId}",
		ZoneSubDELETE,
	},

	Route{
		"ZonalTrafficSubPOST",
		strings.ToUpper("Post"),