#include module GNOME { module Calendar { interface Repository { exception NotFound {}; typedef sequence String_Sequence; /* * get_object: * @uid: Unique Identifier for the object * * Returns a vCalendar object for the object * that matches the UID @uid. */ string get_object (in string uid) raises (NotFound); /* * get_object_by_pilot_id: * @pilot_id: the pilot id * * Returns the object that has the @pilot_id * identifier. */ string get_object_by_pilot_id (in long pilot_id) raises (NotFound); /* * get_id_from_pilot_id: * @pilot_id: the pilot id * * Returns the object id that matches the @pilot_id * identifier. */ string get_id_from_pilot_id (in long pilot_id) raises (NotFound); /* * delete_object: * @uid: Unique Identifier for the object */ void delete_object (in string uid) raises (NotFound); /* * update_object: * @uid: uid of object to update * @object: vcard object to update */ void update_object (in string uid, in string object); /* * update_pilot_id: * @uid: Unique identifier for the event we want to update * @pilot_id: new ID assigned by the pilot * @pilot_status: Status to flag the event with */ void update_pilot_id (in string uid, in long pilot_id, in long pilot_status) raises (NotFound); /* * get_object_id_list * * Returns a sequence of the UID's of the entries */ String_Sequence get_object_id_list(); /* * get_updated_objects: * * Returns a vCalendar with all the objects that have been * modified since the last Pilot Sync */ string get_updated_objects (); /* * Returns the number of objects of a specific type in the calendar * repository. */ enum RecordStatus { ANY, /* This means all records */ NEW, MODIFIED, DELETED }; long get_number_of_objects(in RecordStatus record_status); /* * done: * * Informs the calendar that we are done using it, * gets a chance to destroy windows and save information. */ void done (); }; }; };