Comment #19 on issue 152 by [email protected]: Implement insertSubscriberData MAP message
http://code.google.com/p/jss7/issues/detail?id=152

About the latest patch:
1. CauseValueCodeValue, LSAAttributes, LSAIdentity, Time:
let's put at the top of files quotations from specifications that describe the intrenal structure of a primitive.

2. LSAAttributesImpl:
- we need "toString()" method
- lets create a "static private int" constants for masks like 0x0F, 0x10, 0x20 and so on

3. NAEACIC:
Internal structure is described in
ftp://ftp.3gpp2.org/Archive/TSGN%20(inactive)/Working/2001/2001_02_Chandler/Opening_Plenary/fyi%20T1%20Ballots/T1.113Ballot.pdf
in figures Figure 9/T1.113.3 and Figure 9A/T1.113.3 and in chapter "3.8A Carrier Identification"
Let's implement it

4. NAEAPreferredCI, TimeImpl, CCBSIndicatorsImpl:
- we need "toString()" method

5. Time:
- I have not revised all details of your implementation, but may be better to use for converting long->int->byte[] (and byte[]->int->long) ByteBuffer.getInt() / putInt() methods. It is more elegant and more fast

6. ExtendedRoutingInfo:
- we need an extra unit test for CamelRoutingInfo choice

7. GroupId, LongGroupId:
replace
        public GroupIdImpl() {
                super(1, 3, "GroupId");
        }
with
        public GroupIdImpl() {
                super(3, 3, "GroupId");
        }
(+ other 3 cases) - minLength constructor parameter must be 3 or 4

8. VoiceBroadcastData, VoiceGroupCallData
- may be can acccept when encoding "this.groupId == null" if "longGroupId!=null" and do not throw an exception?
- for unittests: lets provide two unittests:
one when groupId!=null and longGroupId==null
second when groupId==null and longGroupId!=null
(now you provide a test in testEncode() you use groupId!=null and longGroupId!=null)

9. InsertSubscriberDataRequestImpl:
- let's remove TeleServiceCode, BearerServiceCode and Charging Characteristics Flags from here. We have separate enums for this.

10. SendRoutingInformationRequestImpl:
- no unittests for MAP V3
- this test does not cover all parameters

11. SendRoutingInformationResponseImpl: this test does not cover all parameters

to be continued ...


Reply via email to