Taking old commit for releasing image
[ric-plt/rtmgr.git] / pkg / rtmgr / types.go
index bb84804..958ad6d 100644 (file)
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
+
+   This source code is part of the near-RT RIC (RAN Intelligent Controller)
+   platform project (RICP).
+
 ==================================================================================
 */
 /*
   Mnemonic:    rtmgr/types.go
 ==================================================================================
 */
 /*
   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 XApps struct {
   Date:                12 March 2019
 */
 
 package rtmgr
 
 type XApps struct {
-       XApplist []XApp
+       XAppList []XApp
 }
 
 type RouteTable []RouteTableEntry
 }
 
 type RouteTable []RouteTableEntry
@@ -33,6 +37,8 @@ type EndpointList []Endpoint
 
 type Endpoints map[string]*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 {
 //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 {
@@ -43,6 +49,7 @@ type Endpoint struct {
        Port       uint16
        TxMessages []string
        RxMessages []string
        Port       uint16
        TxMessages []string
        RxMessages []string
+       Policies   []int32
        Socket     interface{}
        IsReady    bool
        Keepalive  bool
        Socket     interface{}
        IsReady    bool
        Keepalive  bool
@@ -52,6 +59,8 @@ type RouteTableEntry struct {
        MessageType string
        TxList      EndpointList
        RxGroups    []EndpointList
        MessageType string
        TxList      EndpointList
        RxGroups    []EndpointList
+       SubID       int32
+       RouteType   string
 }
 
 type XApp struct {
 }
 
 type XApp struct {
@@ -68,4 +77,61 @@ type XAppInstance struct {
        Port       uint16   `json:"port"`
        TxMessages []string `json:"txMessages"`
        RxMessages []string `json:"rxMessages"`
        Port       uint16   `json:"port"`
        TxMessages []string `json:"txMessages"`
        RxMessages []string `json:"rxMessages"`
+       Policies   []int32  `json:"policies"`
+}
+
+type PlatformComponents []struct {
+       Name string `json:"name"`
+       Fqdn string `json:"fqdn"`
+       Port uint16 `json:"port"`
+}
+
+type E2TInstance struct {
+        Name string `json:"name"`
+        Fqdn string `json:"fqdn"`
+        Ranlist []string `json:"ranlist"`
+}
+
+type E2tIdentity struct {
+        E2taddress string `json:"e2tAddress"`
+        Rannames []string `json:"ranNames"`
+}
+
+type ConfigRtmgr struct {
+       Pcs PlatformComponents `json:"PlatformComponents"`
+}
+
+type RicComponents struct {
+       XApps []XApp
+       E2Ts  map [string]E2TInstance
+       MeidMap  []string
+       Pcs   PlatformComponents
+}
+
+type Subscription struct {
+       SubID int32
+       Fqdn string
+       Port uint16
+}
+
+type PlatformRoutes []struct {
+       MessageType     string `json:"messagetype"`
+       SenderEndPoint  string `json:"senderendpoint"`
+       SubscriptionId  int32  `json:"subscriptionid"`
+       EndPoint        string `json:"endpoint"`
+       Meid            string `json:"meid"`
+}
+
+type RtmgrRoutes struct {
+       Prs PlatformRoutes      `json:"PlatformRoutes"`
+}
+
+type FqDn struct {
+       Address *string
+        Port *uint16
+}
+
+type XappList struct {
+        SubscriptionID  uint16
+       FqdnList []FqDn
 }
 }