*/
/*
Mnemonic: rtmgr/types.go
- Abstract: Containes RTMGR (Routing Manager) specific types
+ Abstract: Contains RTMGR (Routing Manager) specific types
Date: 12 March 2019
*/
package rtmgr
-type Endpoint struct {
- Name string
- Type string
- IpSocket string
-}
-
type XApps struct {
- XApplist []XApp
+ XAppList []XApp
}
type RouteTable []RouteTableEntry
-
type EndpointList []Endpoint
+type Endpoints map[string]*Endpoint
+
+type SubscriptionList []Subscription
+
+//TODO: uuid is not a real UUID but a string of "ip:port"
+// this should be changed to real UUID later on which should come from xApp Manager // petszila
+type Endpoint struct {
+ Uuid string
+ Name string
+ XAppType string
+ Ip string
+ Port uint16
+ TxMessages []string
+ RxMessages []string
+ Socket interface{}
+ IsReady bool
+ Keepalive bool
+}
+
type RouteTableEntry struct {
MessageType string
TxList EndpointList
RxGroups []EndpointList
+ SubID int32
}
type XApp struct {
Name string `json:"name"`
Status string `json:"status"`
Ip string `json:"ip"`
- Port int `json:"port"`
+ Port uint16 `json:"port"`
TxMessages []string `json:"txMessages"`
RxMessages []string `json:"rxMessages"`
}
+
+type PlatformComponents []struct {
+ Name string `json:"name"`
+ Fqdn string `json:"fqdn"`
+ Port uint16 `json:"port"`
+}
+
+type ConfigRtmgr struct {
+ Pcs PlatformComponents `json:"PlatformComponents"`
+}
+
+type RicComponents struct {
+ XApps []XApp
+ Pcs PlatformComponents
+}
+
+type Subscription struct {
+ SubID int32
+ Fqdn string
+ Port uint16
+}