Changes

Jump to: navigation, search

Calendar:Dev Guide

504 bytes added, 21:29, 11 February 2006
Add locations of sql-table definitions
= Back End =
The back-end of Lightning and Sunbird consists largely of a series of XPCOM components that have been designed specifically for calendar-related purposes. In most cases, these components implement a specific interface defined in an IDL file. All of these interface definitions reside in [http://lxr.mozilla.org/mozilla/source/calendar/base/public/ public/] and contain substantial documentation on their use and implementation. The back end is entirely shared between all calendar applications and extensions.  == SQLite ==Sunbird/Lightning are now using the new mozStorage system to keep track of the majority of user-enterred information. There are several tables stored in the database. The tables concerning calendar locations and preferences are defined [http://lxr.mozilla.org/mozilla/source/calendar/base/src/calCalendarManager.js#119 here] and those concerning events in individual calendars are defined [http://lxr.mozilla.org/mozilla/source/calendar/providers/storage/calStorageCalendar.js#1829 here].
== Providers ==
There are currently 3 types of calendars that are available to the user, and 5 back-end types to support these. Each of these calendar types must implement the [http://lxr.mozilla.org/mozilla/source/calendar/base/public/calICalendarProvider.idl calICalendarProvider interface]. Then, individual instances of a [http://lxr.mozilla.org/mozilla/source/calendar/base/public/calICalendar.idl calICalendar] object are created for each calendar the user subscribes to.
289
edits

Navigation menu