Forum .LRN Q&A: change to the dotLRN applet contract

i have just committed a change to the dotlrn applet contract. i added a ChangeEventHandler operation to it. this breaks any dotlrn applets that don't implement it. i changed all dotlrn applets in the dotlrn cvs tree to implement this new operation.

the operation is needed to notify applets of changes to dotlrn communities. when a change is made to a community an event can be raised via the dotlrn_community::generate_change_event method. this method will notify all dotlrn applets of the change as well as pass any relevant information.

each applet has to listen for any events it wants to be notified of. it does not have to listen for all events. the event handler is usually implemented by the applet's change_event_handler method which then dispatches internally based on event.

currently the only event being thrown is the 'rename' event. it is thrown when a community's name is changed. the dotlrn_calendar, dotlrn_forums, and dotlrn_fs applets listen for this event and take appropriate action. for example, dotlrn_calendar renames the group calendar for the community to the new community name. the other applets perform similar actions.