blob: f32708e982b4e203f244a7f44d707dd2c99e8916 (
plain)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
/**
* Copyright (c) 2018 ZTE Corporation.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* and the Apache License 2.0 which both accompany this distribution,
* and are available at http://www.eclipse.org/legal/epl-v10.html
* and http://www.apache.org/licenses/LICENSE-2.0
*
* Contributors:
* ZTE - initial Project
*/
package controllers
import (
"encoding/json"
"msb2pilot/log"
"msb2pilot/pilot"
"github.com/astaxie/beego"
)
type RouteRuleController struct {
beego.Controller
}
func (this *RouteRuleController) Get() {
log.Log.Debug("routerule controller get method called")
name := this.GetString("name")
namespace := this.GetString("namespace")
log.Log.Debug("name is : " + name)
log.Log.Debug("namespace is: " + namespace)
if name != "" { // get routerule detail
data, _ := pilot.Get("routerules", namespace, name)
b, _ := json.Marshal(data)
log.Log.Debug(string(b))
this.Data["json"] = pilot.ConvertConfig(*data)
} else { // get routerule name list
data, _ := pilot.List("routerules", "")
b, _ := json.Marshal(data)
log.Log.Debug(string(b))
rules := make([]interface{}, 0, len(data))
for _, config := range data {
rules = append(rules, pilot.ConvertConfig(config))
}
this.Data["json"] = rules
}
this.ServeJSON()
}
|