Files
OpenFlare/backend/openflare/plugins/server/httpapi/register_zone.go
T

26 lines
969 B
Go

// Copyright 2026 Arctel.net
// SPDX-License-Identifier: Apache-2.0
package httpapi
import (
"Wavelet/core"
"Wavelet/core/contracts"
"Wavelet/openflare/plugins/server/domain/site/zone"
"Wavelet/openflare/plugins/server/kernel/apiutil"
)
func registerZoneRoutes(apiGroup core.RouterExtension, auth contracts.AuthService) {
zoneGroup := apiGroup.Group("/zones")
zoneGroup.Use(apiutil.AdminMiddlewares(auth)...)
apiutil.RegisterCollection(zoneGroup, "GET", zone.ListHandler)
apiutil.RegisterCollection(zoneGroup, "POST", zone.CreateHandler)
zoneGroup.GET("/:id/overview", zone.GetOverviewHandler)
zoneGroup.GET("/:id/stats", zone.GetStatsHandler)
zoneGroup.POST("/:id/update", zone.UpdateHandler)
zoneGroup.POST("/:id/delete", zone.DeleteHandler)
zoneGroup.POST("/:id/domains", zone.CreateDomainHandler)
zoneGroup.POST("/:id/domains/:domainId/update", zone.UpdateDomainHandler)
zoneGroup.POST("/:id/domains/:domainId/delete", zone.DeleteDomainHandler)
}