Route generation fix
[ric-plt/rtmgr.git] / pkg / sbi / sbi.go
index 09d9381..5b94cbd 100644 (file)
@@ -27,32 +27,23 @@ package sbi
 
 import (
        "errors"
-        "strconv"
        "routing-manager/pkg/rtmgr"
+       "strconv"
 )
 
-const DEFAULT_NNG_PUBSUB_SOCKET_PREFIX = "tcp://"
-const DEFAULT_NNG_PUBSUB_SOCKET_NUMBER = 4560
 const DEFAULT_NNG_PIPELINE_SOCKET_PREFIX = "tcp://"
 const DEFAULT_NNG_PIPELINE_SOCKET_NUMBER = 4561
-const PLATFORMTYPE = "platformcomponenttype"
+const PLATFORMTYPE = "platform"
 
 var (
        SupportedSbis = []*SbiEngineConfig{
                &SbiEngineConfig{
-                        Name:     "nngpush",
-                        Version:  "v1",
-                        Protocol: "nngpipeline",
-                        Instance: NewNngPush(),
-                        IsAvailable: true,
-                },
-               &SbiEngineConfig{
-                        Name:     "nngpub",
-                        Version:  "v1",
-                        Protocol: "nngpubsub",
-                        Instance: NewNngPub(),
-                        IsAvailable: true,
-                },
+                       Name:        "nngpush",
+                       Version:     "v1",
+                       Protocol:    "nngpipeline",
+                       Instance:    NewNngPush(),
+                       IsAvailable: true,
+               },
        }
 )
 
@@ -66,78 +57,76 @@ func GetSbi(sbiName string) (SbiEngine, error) {
 }
 
 type Sbi struct {
-
 }
 
-func (s *Sbi) pruneEndpointList(sbii SbiEngine) {
-        for _, ep := range rtmgr.Eps {
-                if !ep.Keepalive {
-                       rtmgr.Logger.Debug("deleting %v",ep)
-                       sbii.DeleteEndpoint(ep)
-                        delete(rtmgr.Eps, ep.Uuid)
-                } else {
-                        rtmgr.Eps[ep.Uuid].Keepalive = false
-                }
-        }
+func (s *Sbi) pruneEndpointList(sbi SbiEngine) {
+       for _, ep := range rtmgr.Eps {
+               if !ep.Keepalive {
+                       rtmgr.Logger.Debug("deleting %v", ep)
+                       sbi.DeleteEndpoint(ep)
+                       delete(rtmgr.Eps, ep.Uuid)
+               } else {
+                       rtmgr.Eps[ep.Uuid].Keepalive = false
+               }
+       }
 }
 
 func (s *Sbi) updateEndpoints(rcs *rtmgr.RicComponents, sbii SbiEngine) {
        for _, xapp := range (*rcs).Xapps {
-                for _, instance := range xapp.Instances {
-                        uuid := instance.Ip + ":" + strconv.Itoa(int(instance.Port))
-                        if _, ok := rtmgr.Eps[uuid]; ok {
-                                rtmgr.Eps[uuid].Keepalive = true
-                        } else {
-                                ep := &rtmgr.Endpoint{
-                                        uuid,
-                                        instance.Name,
-                                        xapp.Name,
-                                        instance.Ip,
-                                        instance.Port,
-                                        instance.TxMessages,
-                                        instance.RxMessages,
-                                        nil,
-                                        false,
-                                        true,
-                                }
-                                if err := sbii.AddEndpoint(ep); err != nil {
-                                        rtmgr.Logger.Error("can't create socket for endpoint: " + ep.Name + " due to:" + err.Error())
-                                        continue
-                                }
-                                rtmgr.Eps[uuid] = ep
-                        }
-                }
-        }
+               for _, instance := range xapp.Instances {
+                       uuid := instance.Ip + ":" + strconv.Itoa(int(instance.Port))
+                       if _, ok := rtmgr.Eps[uuid]; ok {
+                               rtmgr.Eps[uuid].Keepalive = true
+                       } else {
+                               ep := &rtmgr.Endpoint{
+                                       uuid,
+                                       instance.Name,
+                                       xapp.Name,
+                                       instance.Ip,
+                                       instance.Port,
+                                       instance.TxMessages,
+                                       instance.RxMessages,
+                                       nil,
+                                       false,
+                                       true,
+                               }
+                               if err := sbii.AddEndpoint(ep); err != nil {
+                                       rtmgr.Logger.Error("can't create socket for endpoint: " + ep.Name + " due to:" + err.Error())
+                                       continue
+                               }
+                               rtmgr.Eps[uuid] = ep
+                       }
+               }
+       }
        s.updatePlatformEndpoints(&((*rcs).Pcs), sbii)
-        s.pruneEndpointList(sbii)
+       s.pruneEndpointList(sbii)
 }
 
-func (s *Sbi ) updatePlatformEndpoints(pcs *rtmgr.PlatformComponents, sbii SbiEngine) {
+func (s *Sbi) updatePlatformEndpoints(pcs *rtmgr.PlatformComponents, sbii SbiEngine) {
        rtmgr.Logger.Debug("updatePlatformEndpoints invoked. PCS: %v", *pcs)
-        for _, pc := range *pcs {
-                uuid := pc.Fqdn + ":" + strconv.Itoa(int(pc.Port))
-                if _, ok := rtmgr.Eps[uuid]; ok {
-                        rtmgr.Eps[uuid].Keepalive = true
-                } else {
-                        ep := &rtmgr.Endpoint{
-                                uuid,
-                                pc.Name,
-                                PLATFORMTYPE,
-                                pc.Fqdn,
-                                pc.Port,
-                                rtmgr.PLATFORMMESSAGETYPES[pc.Name]["tx"],
-                                rtmgr.PLATFORMMESSAGETYPES[pc.Name]["rx"],
-                                nil,
-                                false,
-                                true,
-                        }
-                       rtmgr.Logger.Debug("ep created: %v",ep)
-                        if err := sbii.AddEndpoint(ep); err != nil {
-                                rtmgr.Logger.Error("can't create socket for endpoint: " + ep.Name + " due to:" + err.Error())
-                                continue
-                        }
-                        rtmgr.Eps[uuid] = ep
-                }
-        }
+       for _, pc := range *pcs {
+               uuid := pc.Fqdn + ":" + strconv.Itoa(int(pc.Port))
+               if _, ok := rtmgr.Eps[uuid]; ok {
+                       rtmgr.Eps[uuid].Keepalive = true
+               } else {
+                       ep := &rtmgr.Endpoint{
+                               uuid,
+                               pc.Name,
+                               PLATFORMTYPE,
+                               pc.Fqdn,
+                               pc.Port,
+                               rtmgr.PLATFORMMESSAGETYPES[pc.Name]["tx"],
+                               rtmgr.PLATFORMMESSAGETYPES[pc.Name]["rx"],
+                               nil,
+                               false,
+                               true,
+                       }
+                       rtmgr.Logger.Debug("ep created: %v", ep)
+                       if err := sbii.AddEndpoint(ep); err != nil {
+                               rtmgr.Logger.Error("can't create socket for endpoint: " + ep.Name + " due to:" + err.Error())
+                               continue
+                       }
+                       rtmgr.Eps[uuid] = ep
+               }
+       }
 }
-