Skip to content

Commit

Permalink
Update attribution documentation to note where the TIM POJOs came from
Browse files Browse the repository at this point in the history
  • Loading branch information
drewjj committed Dec 9, 2024
1 parent a397df0 commit 92c4504
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions ATTRIBUTION.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,17 @@ The developers also wish to acknowledge the following leaders and contributors:
* Oakridge National Laboratories: Jason Carter and Aaron Ferber

Thanks to the ITS Joint Program Office for their support of the effort.

The J2735 Traveler Information classes were generated using asn1jvm, which is a new ASN.1 compiler targeting Java. The asn1jvm tool is currently capable of compiling the 2016 version of the J2735 ASN.1 specification to Java classes which are capable of serializing and deserializing XER and JER. The output of the tool includes classes with Jackson annotations for each type in the specification, and a runtime library containing base classes for ASN.1 types and custom Jackson serializers and deserialers. The raw output of the tool and associated runtime library are here: https://github.com/iyourshaw/j2735-2016-java

The generated classes were edited for compatibility with the 2020 version of the specification as follows:

* TimDatFrame.java, fields renamed:
* sspTimRights -> notUsed
* sspLocationRights -> notUsed1
* sspMsgRights1 -> notUsed2
* sspMsgRights2 -> notUsed3
* duratonTime -> durationTime
* Classes were moved to Java packages to be consistent with the module organization scheme in the 2020+ versions of J2735, and with Java package naming conventions (lowercase), and existing ODE package naming. Specifically, instead being in a `DSRC` package, the TIM-related classes were moved to `us.dot.its.jpo.ode.plugin.j2735.travelerinformation`, and `us.dot.its.jpo.ode.plugin.j2735.common` packages.

The top level TravelerInformation class was also edited, by changing its base class to `us.dot.its.jpo.ode.plugin.asn1.Asn1Object` to enable it to plug directily into the existing `OdeData`/`OdeMsgPayload` data structure.

0 comments on commit 92c4504

Please sign in to comment.