forked from cloudfoundry/cli
/
router_group.go
37 lines (28 loc) · 913 Bytes
/
router_group.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package v7action
import (
"code.cloudfoundry.org/cli/actor/actionerror"
"code.cloudfoundry.org/cli/api/router"
"code.cloudfoundry.org/cli/api/router/routererror"
)
type RouterGroup router.RouterGroup
func (actor Actor) GetRouterGroups() ([]RouterGroup, error) {
var routerGroups []RouterGroup
apiRouterGroups, err := actor.RoutingClient.GetRouterGroups()
if err != nil {
return nil, err
}
for _, group := range apiRouterGroups {
routerGroups = append(routerGroups, RouterGroup(group))
}
return routerGroups, err
}
func (actor Actor) GetRouterGroupByName(name string) (RouterGroup, error) {
apiRouterGroup, err := actor.RoutingClient.GetRouterGroupByName(name)
if err != nil {
if _, ok := err.(routererror.ResourceNotFoundError); ok {
return RouterGroup{}, actionerror.RouterGroupNotFoundError{Name: name}
}
return RouterGroup{}, err
}
return RouterGroup(apiRouterGroup), nil
}