00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef IDENTITY_H
00021 #define IDENTITY_H
00022
00023 #include <clist.h>
00024
00025 typedef struct XePIdentity_s XePIdentity;
00026
00027 typedef void (*XePIdentityDisconnectAllCb)(XePIdentity *identity, void *data);
00028
00034 struct XePIdentity_s
00035 {
00036
00037 char *id;
00038 char *name;
00039 char *email;
00040 char *organization;
00041 char *reply_to;
00042 clist *signatures;
00043 clist *mailboxes ;
00045 char *draft_ref;
00046 char *queue_ref;
00047 char *sent_ref;
00048 char* mta_ref;
00049 char *templates_ref;
00050 };
00051
00052 clist *
00053 a_Identity_list_new(void);
00054
00055 void
00056 a_Identity_list_free(clist *identities);
00057
00058 clist *
00059 a_Identity_list_get(void);
00060
00061 XePIdentity *
00062 a_Identity_new(void);
00063
00064 XePIdentity *
00065 a_Identity_new_copy(XePIdentity *identity);
00066
00067 void
00068 a_Identity_free(XePIdentity *identity);
00069
00070 void
00071 a_Identity_free_copy(XePIdentity *identity);
00072
00074 void
00075 a_Identity_set_id(XePIdentity *identity, const char* id);
00076
00077 const char *
00078 a_Identity_get_id(XePIdentity *identity);
00079
00080 void
00081 a_Identity_set_name(XePIdentity *identity, const char* name);
00082
00083 const char *
00084 a_Identity_get_name(XePIdentity *identity);
00085
00086 void
00087 a_Identity_set_email(XePIdentity *identity, const char* email);
00088
00089 const char *
00090 a_Identity_get_email(XePIdentity *identity);
00091
00092 void
00093 a_Identity_set_organization(XePIdentity *identity, const char* organization);
00094
00095 const char *
00096 a_Identity_get_organization(XePIdentity *identity);
00097
00098 void
00099 a_Identity_set_reply_to(XePIdentity *identity, const char* reply_to);
00100
00101 const char *
00102 a_Identity_get_reply_to(XePIdentity *identity);
00103
00104 void
00105 a_Identity_set_draft_ref(XePIdentity *identity, const char* draft_ref);
00106
00107 const char *
00108 a_Identity_get_draft_ref(XePIdentity *identity);
00109
00110 void
00111 a_Identity_set_queue_ref(XePIdentity *identity, const char* queue_ref);
00112
00113 const char *
00114 a_Identity_get_queue_ref(XePIdentity *identity);
00115
00116 void
00117 a_Identity_set_sent_ref(XePIdentity *identity, const char* sent_ref);
00118
00119 const char *
00120 a_Identity_get_sent_ref(XePIdentity *identity);
00121
00122 void
00123 a_Identity_set_mta_ref(XePIdentity *identity, const char* mta_ref);
00124
00125 const char *
00126 a_Identity_get_mta_ref(XePIdentity *identity);
00127
00128 void
00129 a_Identity_set_templates_ref(XePIdentity *identity, const char* templates_ref);
00130
00131 const char *
00132 a_Identity_get_templates_ref(XePIdentity *identity);
00133
00134 clist *
00135 a_Identity_signatures_new_copy(clist *signatures);
00136
00137 void
00138 a_Identity_set_signatures(XePIdentity *identity, clist *signatures);
00139
00140 clist *
00141 a_Identity_get_signatures(XePIdentity *identity);
00142
00143 void
00144 a_Identity_set_mailboxes(XePIdentity *identity, clist *mailboxes);
00145
00146 clist *
00147 a_Identity_get_mailboxes(XePIdentity *identity);
00148
00158 XePIdentity *
00159 a_Identity_lookup_by_email(clist *identities, const char *email);
00160
00167 int
00168 a_Identity_is_busy(XePIdentity *identity);
00169
00170 void
00171 a_Identity_disconnect_all(XePIdentity *identity,
00172 XePIdentityDisconnectAllCb user_func,
00173 void *user_data);
00174
00175 #endif