logo       

Sakai 2.2 changes: msg#00699

cms.sakai.devel

Subject: Sakai 2.2 changes

You may notice that I've made a subtle change in some of the APIs. What used to be:

SERVICE_NAME

and was set to the api class's full package name is now:

APPLICATION_ID

and is set to a specific string.

This is to start to address a problem that I should have learned by now. We have in the past, and continue to this day, use the service API names in the code in ways that end up in the database in various ways. So when we re-organize the code (this is the third major re- org of this code base), and change all the API names, we need a database conversion.

Specifically, user preferences for email notification are stored for a number of services (syllabus, announcement, etc), and the storage of these preferences ended up with the API name. These will have to be converted for 2.2.

So to fix this ONCE AND FOR EVER (cause while I love the new API names, after 3 re-orgs, a 4th won't surprise me down the road), I'm introducing the idea of an "application id", which is a string that WILL NOT CHANGE, and is most specifically NOT an API full path name.

A Reference's getType() will return the APPLICATION_ID of the application that owns the entity being referenced.

This type will be used in the storage of user preferences that are application scoped.

The type also shows up in the old archive/merge XML file format. So any files from older versions of Sakai will need to be translated or interpretated at runtime to recognize the old API (and that's the OLD API) based tag names. New files in this format will have the new fixed-string application ids that will never in the future change.

I've taken care of all the code in the sakai 2.2. distribution for this, so you might see some small change in your applications. And there might be an outlier application that I didn't get to that should be changed in this way.

(Ian, I did this change to rwiki. Ray - I didn't see where Gradebook handles references and sets the type, or handles archive/merge, so if I missed that, lets work on getting that updated).

Thanks.

- Glenn

Glenn R. Golden
Software Architect, University Of Michigan
ggolden@xxxxxxxxx



----------------------
This automatic notification message was sent by Sakai Collab
(http://collab.sakaiproject.org/portal) from the DG: Development site.
You can modify how you receive notifications at My Workspace > Preferences.




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise