blob: 1e426fae36933b2a1071b412c60fc1d90439d9d5 (
plain) (
tree)
|
|
#include <Bonobo.idl>
module GNOME {
module Calendar {
interface Repository {
exception NotFound {};
typedef sequence<string> 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_objects_by_id_list:
* @uid_list: a sequence of Unique Identifiers
*
* Returns a vCalendar object for the objects
* that matches the given UID list @uid_list;
* NotFound is raised if any of the given UIDs
* were not found.
*/
string get_objects_by_id_list (in String_Sequence 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_objects:
*
* Danger Will Robinson : This can result in a
* huge string, namely the size of all your entries.
* Returns a vCalendar with all the objects
*/
string get_objects ();
/*
* 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 ();
};
};
};
|