colosseum-near-rt-ric/setup/e2mgr/tools/RoutingManagerSimulator/go/routers.go

147 lines
2.8 KiB
Go
Raw Normal View History

2021-12-08 21:17:46 +01:00
//
// Copyright 2019 AT&T Intellectual Property
// Copyright 2019 Nokia
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// This source code is part of the near-RT RIC (RAN Intelligent Controller)
// platform project (RICP).
/*
* Routing Manager
*
* This is the Swagger/OpenAPI 2.0 definition of Routing Manager's Northbound API.
*
* API version: 0.4.0
* Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
*/
package swagger
import (
"fmt"
"net/http"
"strings"
"github.com/gorilla/mux"
)
type Route struct {
Name string
Method string
Pattern string
HandlerFunc http.HandlerFunc
}
type Routes []Route
func NewRouter() *mux.Router {
router := mux.NewRouter().StrictSlash(true)
for _, route := range routes {
var handler http.Handler
handler = route.HandlerFunc
handler = Logger(handler, route.Name)
router.
Methods(route.Method).
Path(route.Pattern).
Name(route.Name).
Handler(handler)
}
return router
}
func Index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello World!")
}
var routes = Routes{
Route{
"Index",
"GET",
"/ric/v1/",
Index,
},
Route{
"AssociateRanToE2tHandle",
strings.ToUpper("Post"),
"/ric/v1/handles/associate-ran-to-e2t",
AssociateRanToE2tHandle,
},
Route{
"CreateNewE2tHandle",
strings.ToUpper("Post"),
"/ric/v1/handles/e2t",
CreateNewE2tHandle,
},
Route{
"DeleteE2tHandle",
strings.ToUpper("Delete"),
"/ric/v1/handles/e2t",
DeleteE2tHandle,
},
Route{
"DeleteXappSubscriptionHandle",
strings.ToUpper("Delete"),
"/ric/v1/handles/xapp-subscription-handle",
DeleteXappSubscriptionHandle,
},
Route{
"DissociateRan",
strings.ToUpper("Post"),
"/ric/v1/handles/dissociate-ran",
DissociateRan,
},
Route{
"GetHandles",
strings.ToUpper("Get"),
"/ric/v1/handles",
GetHandles,
},
Route{
"ProvideXappHandle",
strings.ToUpper("Post"),
"/ric/v1/handles/xapp-handle",
ProvideXappHandle,
},
Route{
"ProvideXappSubscriptionHandle",
strings.ToUpper("Post"),
"/ric/v1/handles/xapp-subscription-handle",
ProvideXappSubscriptionHandle,
},
Route{
"UpdateXappSubscriptionHandle",
strings.ToUpper("Put"),
"/ric/v1/handles/xapp-subscription-handle/{subscription_id}",
UpdateXappSubscriptionHandle,
},
Route{
"GetHealth",
strings.ToUpper("Get"),
"/ric/v1/health",
GetHealth,
},
}