X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=pkg%2Frtmgr%2Ftypes.go;h=b9b960448b05ae2b696998fb7401e163d881b82e;hb=4101d1060980858538c5600af8d9ad7a258db107;hp=dc46e24a16c7523c6b68f4cb23da53fa4d523aac;hpb=eb2ff0d217caf158dd15424bf70f8aa79c3742b1;p=ric-plt%2Frtmgr.git diff --git a/pkg/rtmgr/types.go b/pkg/rtmgr/types.go index dc46e24..b9b9604 100644 --- a/pkg/rtmgr/types.go +++ b/pkg/rtmgr/types.go @@ -14,6 +14,10 @@ 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). + ================================================================================== */ /* @@ -24,8 +28,16 @@ package rtmgr +type RMRUpdateType int + +const ( + XappType = iota + SubsType + E2Type +) + type XApps struct { - XApplist []XApp + XAppList []XApp } type RouteTable []RouteTableEntry @@ -35,6 +47,10 @@ type Endpoints map[string]*Endpoint type SubscriptionList []Subscription +type MessageTypeList map[string]string + +type ProcessMultipleRMR map[string]int + //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 { @@ -45,9 +61,11 @@ type Endpoint struct { Port uint16 TxMessages []string RxMessages []string + Policies []int32 Socket interface{} IsReady bool Keepalive bool + Whid int } type RouteTableEntry struct { @@ -55,6 +73,7 @@ type RouteTableEntry struct { TxList EndpointList RxGroups []EndpointList SubID int32 + RouteType string } type XApp struct { @@ -71,6 +90,7 @@ type XAppInstance struct { Port uint16 `json:"port"` TxMessages []string `json:"txMessages"` RxMessages []string `json:"rxMessages"` + Policies []int32 `json:"policies"` } type PlatformComponents []struct { @@ -79,13 +99,30 @@ type PlatformComponents []struct { Port uint16 `json:"port"` } -type RtmgrConfig struct { +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 MessageTypeIdentifier struct { + Mit []string `json:"messagetypes"` +} + type RicComponents struct { - Xapps []XApp - Pcs PlatformComponents + XApps []XApp + E2Ts map[string]E2TInstance + MeidMap []string + Pcs PlatformComponents } type Subscription struct { @@ -93,3 +130,29 @@ type Subscription struct { 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 +} + +var ( + Rtmgr_ready bool +)