Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

(warning) Note that <messageRoutingKey> in the above specs is not an actual XML tag. It represents the message routing key for the message being described.

...

See Consuming UHIMS Events

Anchor
retrofit
retrofit
Retrofit Messages

Your application usually tracks people who are currently active, and will typically do an initial load of all active people from UHIMS, followed by ongoing synchronization via UHIMS Events. One problem with this model is that when a previously inactive person becomes active, UHIMS will not generate an <addPerson> (because person already exists in UHIMS), and your application will receive an <addAffiliation> message for a person that has not been previously encountered by your application.

We solve this problem by generating retrofit messages that contain all data about a person prior to any <addAffiliation>, <addUsername>, <addEmail> or <addContactInfo> message:

<retrofitPerson> (always)
<retrofitUsername> (if person has a username)
<retrofitEmail> (if person has email)
<retrofitContactInfo> (if person has contact info)

We will only include retrofit messages for data that exists for that person. For example, if the person has no username, email or contact info, we will only generate a <retrofitPerson> message prior to generating an <addAffiliation> message.