GetPortData() returns policies 16/5016/1 v0.6.1
authorMohamed Abukar <abukar.mohamed@nokia.com>
Mon, 9 Nov 2020 13:14:25 +0000 (15:14 +0200)
committerMohamed Abukar <abukar.mohamed@nokia.com>
Mon, 9 Nov 2020 14:05:36 +0000 (16:05 +0200)
Change-Id: Ibe79d33ba92015ac15e5ea8d2a647e0efc290d19
Signed-off-by: Mohamed Abukar <abukar.mohamed@nokia.com>
config/config-file.json
pkg/xapp/config.go
pkg/xapp/rmr.go
pkg/xapp/types.go

index 3dad244..5741d69 100755 (executable)
@@ -53,7 +53,7 @@
                 "maxRetryOnFailure": 5,
                 "rxMessages": ["RIC_SUB_RESP", "RIC_SUB_FAILURE"],
                 "txMessages": ["RIC_SGNB_ADDITION_REQ", "RIC_SGNB_ADDITION_ACK"],
-                "policies": [],
+                "policies": [801111, 902222],
                 "description": "rmr data port for ueec"
             }
         ]
index 8d427c5..bb76a07 100755 (executable)
@@ -127,6 +127,13 @@ func PublishConfigChange(appName, eventJson string) error {
 }
 
 func GetPortData(pname string) (d PortData) {
+       var getPolicies = func(policies []interface{}) (plist []int) {
+               for _, p := range policies {
+                       plist = append(plist, int(p.(float64)))
+               }
+               return plist
+       }
+
        for _, v := range viper.GetStringMap("messaging")["ports"].([]interface{}) {
                if n, ok := v.(map[string]interface{})["name"].(string); ok && n == pname {
                        d.Name = n
@@ -148,6 +155,9 @@ func GetPortData(pname string) (d PortData) {
                        if m, _ := v.(map[string]interface{})["maxRetryOnFailure"].(float64); ok {
                                d.MaxRetryOnFailure = int(m)
                        }
+                       if policies, ok := v.(map[string]interface{})["policies"]; ok {
+                               d.Policies = getPolicies(policies.([]interface{}))
+                       }
                }
        }
        return
index f2d09da..9407024 100755 (executable)
@@ -132,8 +132,9 @@ type RMRClientParams struct {
 }
 
 func (params *RMRClientParams) String() string {
-       return fmt.Sprintf("ProtPort=%d MaxSize=%d ThreadType=%d StatDesc=%s LowLatency=%t FastAck=%t",
-               params.RmrData.Port, params.RmrData.MaxSize, params.RmrData.ThreadType, params.StatDesc, params.RmrData.LowLatency, params.RmrData.FastAck)
+       return fmt.Sprintf("ProtPort=%d MaxSize=%d ThreadType=%d StatDesc=%s LowLatency=%t FastAck=%t Policies=%v",
+               params.RmrData.Port, params.RmrData.MaxSize, params.RmrData.ThreadType, params.StatDesc,
+               params.RmrData.LowLatency, params.RmrData.FastAck, params.RmrData.Policies)
 }
 
 //-----------------------------------------------------------------------------
index 387d393..b6fc49b 100755 (executable)
@@ -78,5 +78,6 @@ type PortData struct {
        ThreadType        int
        LowLatency        bool
        FastAck           bool
+       Policies          []int
        MaxRetryOnFailure int
 }