1
0
Fork 0

rsl: Parse the Rf Channel related message and the immediate assignment

This commit is contained in:
Holger Hans Peter Freyther 2012-08-24 15:49:30 +02:00
parent dd58be49d6
commit 388f74229b
2 changed files with 89 additions and 4 deletions

View File

@ -120,7 +120,6 @@ Osmo.TLVParserBase subclass: RSLMessageBase [
].
].
discrim printNl.
^ self error: 'Did not find a handler for messgae type: ', type displayString.
]
@ -219,7 +218,7 @@ Object subclass: RSLInformationElement [
attrChannelNeeded [ <category: 'ie'> ^ 2r00101000 ]
attrCbCommandType [ <category: 'ie'> ^ 2r00101001 ]
attrSmsCbMessage [ <category: 'ie'> ^ 2r00101010 ]
atrFullImmediateAssignInfo [ <category: 'ie'> ^ 2r00101011 ]
attrFullImmediateAssignInfo [ <category: 'ie'> ^ 2r00101011 ]
attrSacchInformation [ <category: 'ie'> ^ 2r00101100 ]
attrCbchLoadInformation [ <category: 'ie'> ^ 2r00101101 ]
attrSmsCbChannelIndicator [ <category: 'ie'> ^ 2r00101110 ]
@ -459,6 +458,16 @@ Object subclass: RSLMessageDefinitions [
yourself.
]
rfChannelReleaseMessage [
<category: 'dedicated-channel'>
^ self dedicatedChannelMessageBase
]
rfChannelReleaseAckMessage [
<category: 'dedicated-channel'>
^ self dedicatedChannelMessageBase
]
commonChannelManagementBase [
<category: 'channel-management'>
^ OrderedCollection new
@ -746,7 +755,23 @@ RSLCommonChannelManagement subclass: RSLBCCHInformation [
RSLBCCHInformation class >> tlvDescription [
<category: 'parsing'>
^ RSLMessageDefinitions bcchInformation
^ RSLMessageDefinitions bcchInformationMessage
]
]
RSLCommonChannelManagement subclass: RSLImmediateAssignment [
| full_info |
<category: 'BTS-RSL'>
<comment: 'I represent a GSM 08.58 GSM 8.5.6 Immediate Assign Command'>
RSLImmediateAssignment class >> messageType [
<category: 'parsing'>
^ self messageTrxImmediateAssignCommand
]
RSLImmediateAssignment class >> tlvDescription [
<category: 'parsing'>
^ RSLMessageDefinitions immediateAssignCommandMessage
]
]
@ -796,6 +821,11 @@ RSLMessageBase subclass: RSLDedicatedChannelManagement [
^ 0
]
channelNumber: aNr [
<category: 'creation'>
channel_number := aNr.
]
channelNumber [
<category: 'accessing'>
^ channel_number
@ -820,3 +850,49 @@ RSLDedicatedChannelManagement subclass: RSLChannelActivation [
^ RSLMessageDefinitions channelActivationMessage
]
]
RSLDedicatedChannelManagement subclass: RSLChannelActivationAck [
| frame_number |
<comment: 'I represent a GSM 08.58 GSM 8.4.2 Channel Activation Ack.'>
RSLChannelActivationAck class >> messageType [
<category: 'parsing'>
^ self messageDedChannelActivationAck
]
RSLChannelActivationAck class >> tlvDescription [
<category: 'parsing'>
^ RSLMessageDefinitions channelActivationAckMessage
]
frameNumber: aNumber [
<category: 'creation'>
frame_number := aNumber
]
]
RSLDedicatedChannelManagement subclass: RSLRFChannelRelease [
<comment: 'I represent a GSM 08.58 GSM 8.4.14 RF Channel Release'>
RSLRFChannelRelease class >> messageType [
<category: 'parsing'>
^ self messageDedRfChannelRelease
]
RSLRFChannelRelease class >> tlvDescription [
<category: 'parsing'>
^ RSLMessageDefinitions rfChannelReleaseMessage.
]
]
RSLDedicatedChannelManagement subclass: RSLRFChannelReleaseAck [
<comment: 'I represent a GSM 08.58 GSM 8.4.19 RF Channel Release Ack'>
RSLRFChannelReleaseAck class >> messageType [
<category: 'parsing'>
^ self messageDedRfChannelReleaseAck
]
RSLRFChannelReleaseAck class >> tlvDescription [
<category: 'parsing'>
^ RSLMessageDefinitions rfChannelReleaseAckMessage
]
]

View File

@ -415,15 +415,24 @@ RoundTripTestCase subclass: RSLRoundTripTest [
^ #(8 33 1 14 3 0 6 4 0 3 8 0 5 6 100 15 227 41 114 0 4 0 13 7 24 23)
]
immediateAssignmentData [
^ #(12 22 1 144 43 23 45 6 63 3 15 227 41 3 42 20 23 0 43 43 43 43 43
43 43 43 43 43 43)
]
testBCCHInformation [
self roundtripTestFor: #bcchInformationData class: RSLBCCHInformation
]
testSacchFillingData [
testSacchFilling [
self roundtripTestFor: #sacchFillingData1 class: RSLSACCHFilling.
self roundtripTestFor: #sacchFillingData2 class: RSLSACCHFilling.
]
testImmediateAssignment [
self roundtripTestFor: #immediateAssignmentData class: RSLImmediateAssignment.
]
testChannelActivation [
| rsl |