// PUT /{network}/{lease.network} func handleRenewLease(ctx context.Context, sm subnet.Manager, w http.ResponseWriter, r *http.Request) { network := mux.Vars(r)["network"] if network == "_" { network = "" } lease := subnet.Lease{} if err := json.NewDecoder(r.Body).Decode(&lease); err != nil { w.WriteHeader(http.StatusBadRequest) fmt.Fprint(w, "JSON decoding error: ", err) return } if err := sm.RenewLease(ctx, network, &lease); err != nil { w.WriteHeader(http.StatusInternalServerError) fmt.Fprint(w, err) return } jsonResponse(w, http.StatusOK, lease) }