openmeter / server /router /addon.go
Leon4gr45's picture
Upload folder using huggingface_hub (part 6)
d6f631f verified
Raw
History Blame Contribute Delete
1.74 kB
package router
import (
"net/http"
"github.com/samber/lo"
"github.com/openmeterio/openmeter/api"
addonhttpdriver "github.com/openmeterio/openmeter/openmeter/productcatalog/addon/httpdriver"
)
// List addons
// (GET /api/v1/addons)
func (a *Router) ListAddons(w http.ResponseWriter, r *http.Request, params api.ListAddonsParams) {
a.addonHandler.ListAddons().With(params).ServeHTTP(w, r)
}
// Create a addon
// (POST /api/v1/addons)
func (a *Router) CreateAddon(w http.ResponseWriter, r *http.Request) {
a.addonHandler.CreateAddon().ServeHTTP(w, r)
}
// Delete addon
// (DELETE /api/v1/addons/{addonId})
func (a *Router) DeleteAddon(w http.ResponseWriter, r *http.Request, addonId string) {
a.addonHandler.DeleteAddon().With(addonId).ServeHTTP(w, r)
}
// Get addon
// (GET /api/v1/addons/{addonId})
func (a *Router) GetAddon(w http.ResponseWriter, r *http.Request, addonId string, params api.GetAddonParams) {
a.addonHandler.GetAddon().With(addonhttpdriver.GetAddonRequestParams{
IDOrKey: addonId,
IncludeLatest: lo.FromPtrOr(params.IncludeLatest, false),
}).ServeHTTP(w, r)
}
// Update a addon
// (PUT /api/v1/addons/{addonId})
func (a *Router) UpdateAddon(w http.ResponseWriter, r *http.Request, addonId string) {
a.addonHandler.UpdateAddon().With(addonId).ServeHTTP(w, r)
}
// Archive addon version
// (POST /api/v1/addons/{addonId}/archive)
func (a *Router) ArchiveAddon(w http.ResponseWriter, r *http.Request, addonId string) {
a.addonHandler.ArchiveAddon().With(addonId).ServeHTTP(w, r)
}
// Publish addon
// (POST /api/v1/addons/{addonId}/publish)
func (a *Router) PublishAddon(w http.ResponseWriter, r *http.Request, addonId string) {
a.addonHandler.PublishAddon().With(addonId).ServeHTTP(w, r)
}