| package router |
|
|
| import ( |
| "net/http" |
|
|
| "github.com/openmeterio/openmeter/api" |
| subscriptionhttpdriver "github.com/openmeterio/openmeter/openmeter/productcatalog/subscription/http" |
| "github.com/openmeterio/openmeter/pkg/featuregate" |
| ) |
|
|
| |
| func (a *Router) CreateSubscription(w http.ResponseWriter, r *http.Request) { |
| a.subscriptionHandler.CreateSubscription(). |
| Chain(featuregate.NewMiddleware[subscriptionhttpdriver.CreateSubscriptionRequest, subscriptionhttpdriver.CreateSubscriptionResponse]( |
| a.config.NamespaceDecoder.GetNamespace, |
| a.config.FeatureGate, |
| )). |
| ServeHTTP(w, r) |
| } |
|
|
| func (a *Router) ChangeSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.ChangeSubscription(). |
| Chain(featuregate.NewMiddleware[subscriptionhttpdriver.ChangeSubscriptionRequest, subscriptionhttpdriver.ChangeSubscriptionResponse]( |
| a.config.NamespaceDecoder.GetNamespace, |
| a.config.FeatureGate, |
| )). |
| With(subscriptionhttpdriver.ChangeSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) GetSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string, params api.GetSubscriptionParams) { |
| a.subscriptionHandler.GetSubscription().With(subscriptionhttpdriver.GetSubscriptionParams{ |
| Query: params, |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) EditSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.EditSubscription().With(subscriptionhttpdriver.EditSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) CancelSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.CancelSubscription().With(subscriptionhttpdriver.CancelSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) MigrateSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.MigrateSubscription().With(subscriptionhttpdriver.MigrateSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) UnscheduleCancelation(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.ContinueSubscription().With(subscriptionhttpdriver.ContinueSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) RestoreSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.RestoreSubscription().With(subscriptionhttpdriver.RestoreSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|
| |
| func (a *Router) DeleteSubscription(w http.ResponseWriter, r *http.Request, subscriptionId string) { |
| a.subscriptionHandler.DeleteSubscription().With(subscriptionhttpdriver.DeleteSubscriptionParams{ |
| ID: subscriptionId, |
| }).ServeHTTP(w, r) |
| } |
|
|