d56bf090ce
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
36 lines
830 B
Go
36 lines
830 B
Go
package swagger
|
|
|
|
// Copyright 2015 Ernest Micklei. All rights reserved.
|
|
// Use of this source code is governed by a license
|
|
// that can be found in the LICENSE file.
|
|
|
|
import "github.com/emicklei/go-restful"
|
|
|
|
type orderedRouteMap struct {
|
|
elements map[string][]restful.Route
|
|
keys []string
|
|
}
|
|
|
|
func newOrderedRouteMap() *orderedRouteMap {
|
|
return &orderedRouteMap{
|
|
elements: map[string][]restful.Route{},
|
|
keys: []string{},
|
|
}
|
|
}
|
|
|
|
func (o *orderedRouteMap) Add(key string, route restful.Route) {
|
|
routes, ok := o.elements[key]
|
|
if ok {
|
|
routes = append(routes, route)
|
|
o.elements[key] = routes
|
|
return
|
|
}
|
|
o.elements[key] = []restful.Route{route}
|
|
o.keys = append(o.keys, key)
|
|
}
|
|
|
|
func (o *orderedRouteMap) Do(block func(key string, routes []restful.Route)) {
|
|
for _, k := range o.keys {
|
|
block(k, o.elements[k])
|
|
}
|
|
}
|