comparison libpurple/protocols/msn/contact.h @ 23459:69af5301e1a7

killing MsnContact which just wraps MsnSession
author Ka-Hing Cheung <khc@hxbc.us>
date Sun, 09 Mar 2008 23:55:27 +0000
parents b70f30dd4753
children 1ac5faa72c8d
comparison
equal deleted inserted replaced
23458:44159acb7bb7 23459:69af5301e1a7
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */ 24 */
25 #ifndef _MSN_CONTACT_H_ 25 #ifndef _MSN_CONTACT_H_
26 #define _MSN_CONTACT_H_ 26 #define _MSN_CONTACT_H_
27 27
28 #include "session.h"
29
28 #define MSN_CONTACT_SERVER "contacts.msn.com" 30 #define MSN_CONTACT_SERVER "contacts.msn.com"
29 31
30 /* Get Contact List */ 32 /* Get Contact List */
31 33
32 #define MSN_GET_CONTACT_POST_URL "/abservice/SharingService.asmx" 34 #define MSN_GET_CONTACT_POST_URL "/abservice/SharingService.asmx"
586 MSN_ADD_GROUP = 0x10, 588 MSN_ADD_GROUP = 0x10,
587 MSN_DEL_GROUP = 0x20, 589 MSN_DEL_GROUP = 0x20,
588 MSN_RENAME_GROUP = 0x40, 590 MSN_RENAME_GROUP = 0x40,
589 } MsnCallbackAction; 591 } MsnCallbackAction;
590 592
591 typedef struct _MsnContact MsnContact;
592
593 struct _MsnContact
594 {
595 MsnSession *session;
596
597 MsnSoapConn *soapconn;
598 };
599
600 typedef struct _MsnCallbackState MsnCallbackState; 593 typedef struct _MsnCallbackState MsnCallbackState;
601 594
602 struct _MsnCallbackState 595 struct _MsnCallbackState
603 { 596 {
604 gchar * who; 597 gchar * who;
621 } MsnSoapPartnerScenario; 614 } MsnSoapPartnerScenario;
622 615
623 /************************************************ 616 /************************************************
624 * function prototype 617 * function prototype
625 ************************************************/ 618 ************************************************/
626 MsnContact * msn_contact_new(MsnSession *session);
627 void msn_contact_destroy(MsnContact *contact);
628
629 MsnCallbackState * msn_callback_state_new(MsnSession *session); 619 MsnCallbackState * msn_callback_state_new(MsnSession *session);
630 void msn_callback_state_free(MsnCallbackState *state); 620 void msn_callback_state_free(MsnCallbackState *state);
631 void msn_callback_state_set_who(MsnCallbackState *state, const gchar *who); 621 void msn_callback_state_set_who(MsnCallbackState *state, const gchar *who);
632 void msn_callback_state_set_uid(MsnCallbackState *state, const gchar *uid); 622 void msn_callback_state_set_uid(MsnCallbackState *state, const gchar *uid);
633 void msn_callback_state_set_old_group_name(MsnCallbackState *state, 623 void msn_callback_state_set_old_group_name(MsnCallbackState *state,
637 void msn_callback_state_set_guid(MsnCallbackState *state, const gchar *guid); 627 void msn_callback_state_set_guid(MsnCallbackState *state, const gchar *guid);
638 void msn_callback_state_set_list_id(MsnCallbackState *state, MsnListId list_id); 628 void msn_callback_state_set_list_id(MsnCallbackState *state, MsnListId list_id);
639 void msn_callback_state_set_action(MsnCallbackState *state, 629 void msn_callback_state_set_action(MsnCallbackState *state,
640 MsnCallbackAction action); 630 MsnCallbackAction action);
641 631
642 void msn_contact_connect(MsnContact *contact); 632 void msn_contact_connect(MsnSession *session);
643 void msn_get_contact_list(MsnContact * contact, 633 void msn_get_contact_list(MsnSession *session,
644 const MsnSoapPartnerScenario partner_scenario, 634 const MsnSoapPartnerScenario partner_scenario,
645 const char *update); 635 const char *update);
646 void msn_get_address_book(MsnContact *contact, 636 void msn_get_address_book(MsnSession *session,
647 const MsnSoapPartnerScenario partner_scenario, 637 const MsnSoapPartnerScenario partner_scenario,
648 const char * update, const char * gupdate); 638 const char * update, const char * gupdate);
649 639
650 /* contact SOAP operations */ 640 /* contact SOAP operations */
651 void msn_update_contact(MsnContact *contact, const char* nickname); 641 void msn_update_contact(MsnSession *session, const char* nickname);
652 642
653 void msn_add_contact(MsnContact *contact, MsnCallbackState *state, 643 void msn_add_contact(MsnSession *session, MsnCallbackState *state,
654 const char *passport); 644 const char *passport);
655 void msn_delete_contact(MsnContact *contact, const char *contactId); 645 void msn_delete_contact(MsnSession *session, const char *contactId);
656 646
657 void msn_add_contact_to_group(MsnContact *contact, MsnCallbackState *state, 647 void msn_add_contact_to_group(MsnSession *session, MsnCallbackState *state,
658 const char *passport, const char *groupId); 648 const char *passport, const char *groupId);
659 void msn_del_contact_from_group(MsnContact *contact, const char *passport, 649 void msn_del_contact_from_group(MsnSession *session, const char *passport,
660 const char *group_name); 650 const char *group_name);
661 /* group operations */ 651 /* group operations */
662 void msn_add_group(MsnSession *session, MsnCallbackState *state, 652 void msn_add_group(MsnSession *session, MsnCallbackState *state,
663 const char* group_name); 653 const char* group_name);
664 void msn_del_group(MsnSession *session, const gchar *group_name); 654 void msn_del_group(MsnSession *session, const gchar *group_name);
665 void msn_contact_rename_group(MsnSession *session, const char *old_group_name, 655 void msn_contact_rename_group(MsnSession *session, const char *old_group_name,
666 const char *new_group_name); 656 const char *new_group_name);
667 657
668 /* lists operations */ 658 /* lists operations */
669 void msn_add_contact_to_list(MsnContact *contact, MsnCallbackState *state, 659 void msn_add_contact_to_list(MsnSession *session, MsnCallbackState *state,
670 const gchar *passport, const MsnListId list); 660 const gchar *passport, const MsnListId list);
671 void msn_del_contact_from_list(MsnContact *contact, MsnCallbackState *state, 661 void msn_del_contact_from_list(MsnSession *session, MsnCallbackState *state,
672 const gchar *passport, const MsnListId list); 662 const gchar *passport, const MsnListId list);
673 663
674 void msn_contact_connect_init(MsnSoapConn *soapconn); 664 void msn_contact_connect_init(MsnSoapConn *soapconn);
675 665
676 #endif /* _MSN_CONTACT_H_ */ 666 #endif /* _MSN_CONTACT_H_ */