...
The MOTHRA feed will use a rather standard table and pl/sql feed approach built for MyUCDavis several years ago. The feed procedure's algorithm is as follows:
Code Block |
---|
for each user in MOTHRA
attempt to update the local row with the current mothra data
|
Test users
procedure can be run nightly to update the information in the local table with the latest data from MOTHRA. The local table will then be available at all times for querying.
Test users
The sakai team had a requirement to populate their store of people with some fake test users. To this end, a set of loops was added to the end of the MOTHRA person stored procedure. These inserts used specially identifiable id fields to ensure no overlap with real users.
LDAP
Eventually, it may be possible to move away from MOTHRA and instead get this type of information from the Campus LDAP directory. However, before this can be done, Sakai must be upgraded to handle multiple sources of id information from each source system.
...
The initial implementation of a Mothra Feed used a database link to the MyUCDavis CourseManagement database to do a nightly truncate a fill of person data. Since then, the feed procedure has been enhanced to perform a full feed from MOTHRA itself. The feed procedure's algorithm is as follows:
Code Block |
---|
for each user in MOTHRA loop
attempt to update the local row with the current mothra data, set activity date to new date
if update fails, insert a new row for the user, set activity date to new date
end loop
delete all rows with an activity date earlier than the new date
|
Note: The actual procedure performs some checking on null pidms because table updates will update the pidm column to a blank space instead of leaving it as null.