Subscription REST interface update
[ric-plt/submgr.git] / e2ap / pkg / e2ap / msg_e2ap.go
index 2ce2c17..202cb65 100644 (file)
@@ -119,8 +119,8 @@ func (msgInfo *MessageInfo) String() string {
 //
 //-----------------------------------------------------------------------------
 type RequestId struct {
-       Id         uint32
-       InstanceId uint32
+       Id         uint32 //RequestorId
+       InstanceId uint32 //Same as SubId in many place in the code. Name changed in E2 spec SubId -> InstanceId
 }
 
 func (rid *RequestId) String() string {
@@ -183,34 +183,9 @@ const (
 )
 
 type EventTriggerDefinition struct {
-       NBX2EventTriggerDefinitionPresent bool
-       X2EventTriggerDefinition
-       NBNRTEventTriggerDefinitionPresent bool
-       NBNRTEventTriggerDefinition
+       Data OctetString
 }
 
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type X2EventTriggerDefinition struct {
-       InterfaceId
-       InterfaceDirection uint32
-       ProcedureCode      uint32
-       TypeOfMessage      uint64
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type NBNRTEventTriggerDefinition struct {
-       TriggerNature uint8
-}
-
-const ( // enum NRTTriggerNature
-       NRTTriggerNature_now = iota
-       NRTTriggerNature_onchange
-)
-
 /*
 //-----------------------------------------------------------------------------
 //
@@ -221,129 +196,7 @@ type CallProcessId struct {
 */
 
 type ActionDefinitionChoice struct {
-       ActionDefinitionX2Format1Present  bool
-       ActionDefinitionX2Format1         E2SMgNBX2actionDefinition
-       ActionDefinitionX2Format2Present  bool
-       ActionDefinitionX2Format2         ActionDefinitionFormat2
-       ActionDefinitionNRTFormat1Present bool
-       ActionDefinitionNRTFormat1        E2SMgNBNRTActionDefinitionFormat1
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type E2SMgNBNRTActionDefinitionFormat1 struct {
-       RanParameterList []RANParameterItem // 1..255
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type E2SMgNBX2actionDefinition struct {
-       StyleID              uint64
-       ActionParameterItems []ActionParameterItem // 1..255
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type ActionParameterItem struct {
-       ParameterID          uint32 // 1..255
-       ActionParameterValue ActionParameterValue
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type ActionParameterValue struct {
-       ValueIntPresent  bool
-       ValueInt         int64
-       ValueEnumPresent bool
-       ValueEnum        int64
-       ValueBoolPresent bool
-       ValueBool        bool
-       ValueBitSPresent bool
-       ValueBitS        BitString
-       ValueOctSPresent bool
-       ValueOctS        OctetString
-       ValuePrtSPresent bool
-       ValuePrtS        OctetString
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type ActionDefinitionFormat2 struct {
-       RanUEgroupItems []RANueGroupItem // 1..15
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANueGroupItem struct {
-       RanUEgroupID         int64
-       RanUEgroupDefinition RANueGroupDefinition
-       RanPolicy            RANimperativePolicy
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANueGroupDefinition struct {
-       RanUEGroupDefItems []RANueGroupDefItem // 1..255
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANimperativePolicy struct {
-       RanParameterItems []RANParameterItem // 1..255
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANueGroupDefItem struct {
-       RanParameterID    uint32 // 1..255
-       RanParameterTest  uint8
-       RanParameterValue RANParameterValue
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANParameterItem struct {
-       RanParameterID    uint8 // 1..255
-       RanParameterValue RANParameterValue
-}
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-const ( // enum RANParameterTest
-       RANParameterTest_equal = iota
-       RANParameterTest_greaterthan
-       RANParameterTest_lessthan
-       RANParameterTest_contains
-       RANParameterTest_present
-)
-
-//-----------------------------------------------------------------------------
-//
-//-----------------------------------------------------------------------------
-type RANParameterValue struct {
-       ValueIntPresent  bool
-       ValueInt         int64
-       ValueEnumPresent bool
-       ValueEnum        int64
-       ValueBoolPresent bool
-       ValueBool        bool
-       ValueBitSPresent bool
-       ValueBitS        BitString
-       ValueOctSPresent bool
-       ValueOctS        OctetString
-       ValuePrtSPresent bool
-       ValuePrtS        OctetString
+       Data OctetString
 }
 
 //-----------------------------------------------------------------------------
@@ -371,27 +224,53 @@ const (
        E2AP_SubSeqActionTypeWait     uint64 = 1
 )
 
+var E2AP_SubSeqActionTypeStrMap = map[string]uint64{
+       "continue": E2AP_SubSeqActionTypeContinue,
+       "wait":     E2AP_SubSeqActionTypeWait,
+}
+
 const (
        E2AP_TimeToWaitZero   uint64 = 0
        E2AP_TimeToWaitW1ms   uint64 = 1
        E2AP_TimeToWaitW2ms   uint64 = 2
        E2AP_TimeToWaitW5ms   uint64 = 3
        E2AP_TimeToWaitW10ms  uint64 = 4
-       E2AP_TimeToWaitW20ms  uint64 = 4
-       E2AP_TimeToWaitW30ms  uint64 = 5
-       E2AP_TimeToWaitW40ms  uint64 = 6
-       E2AP_TimeToWaitW50ms  uint64 = 7
-       E2AP_TimeToWaitW100ms uint64 = 8
-       E2AP_TimeToWaitW200ms uint64 = 9
-       E2AP_TimeToWaitW500ms uint64 = 10
-       E2AP_TimeToWaitW1s    uint64 = 11
-       E2AP_TimeToWaitW2s    uint64 = 12
-       E2AP_TimeToWaitW5s    uint64 = 13
-       E2AP_TimeToWaitW10s   uint64 = 14
-       E2AP_TimeToWaitW20s   uint64 = 15
-       E2AP_TimeToWaitW60    uint64 = 16
+       E2AP_TimeToWaitW20ms  uint64 = 5
+       E2AP_TimeToWaitW30ms  uint64 = 6
+       E2AP_TimeToWaitW40ms  uint64 = 7
+       E2AP_TimeToWaitW50ms  uint64 = 8
+       E2AP_TimeToWaitW100ms uint64 = 9
+       E2AP_TimeToWaitW200ms uint64 = 10
+       E2AP_TimeToWaitW500ms uint64 = 11
+       E2AP_TimeToWaitW1s    uint64 = 12
+       E2AP_TimeToWaitW2s    uint64 = 13
+       E2AP_TimeToWaitW5s    uint64 = 14
+       E2AP_TimeToWaitW10s   uint64 = 15
+       E2AP_TimeToWaitW20s   uint64 = 16
+       E2AP_TimeToWaitW60    uint64 = 17
 )
 
+var E2AP_TimeToWaitStrMap = map[string]uint64{
+       "zero":   E2AP_TimeToWaitZero,
+       "w1ms":   E2AP_TimeToWaitW1ms,
+       "w2ms":   E2AP_TimeToWaitW2ms,
+       "w5ms":   E2AP_TimeToWaitW5ms,
+       "w10ms":  E2AP_TimeToWaitW10ms,
+       "w20ms":  E2AP_TimeToWaitW20ms,
+       "w30ms":  E2AP_TimeToWaitW30ms,
+       "w40ms":  E2AP_TimeToWaitW40ms,
+       "w50ms":  E2AP_TimeToWaitW50ms,
+       "w100ms": E2AP_TimeToWaitW100ms,
+       "w200ms": E2AP_TimeToWaitW200ms,
+       "w500ms": E2AP_TimeToWaitW500ms,
+       "w1s":    E2AP_TimeToWaitW1s,
+       "w2s":    E2AP_TimeToWaitW2s,
+       "w5s":    E2AP_TimeToWaitW5s,
+       "w10s":   E2AP_TimeToWaitW10s,
+       "w20s":   E2AP_TimeToWaitW20s,
+       "w60s":   E2AP_TimeToWaitW60,
+}
+
 type SubsequentAction struct {
        Present    bool
        Type       uint64
@@ -409,6 +288,12 @@ const (
        E2AP_ActionTypeInvalid uint64 = 99 // For RIC internal usage only
 )
 
+var E2AP_ActionTypeStrMap = map[string]uint64{
+       "report": E2AP_ActionTypeReport,
+       "insert": E2AP_ActionTypeInsert,
+       "policy": E2AP_ActionTypePolicy,
+}
+
 type ActionToBeSetupItem struct {
        ActionId                   uint64
        ActionType                 uint64