addressbooksyncee.cpp
00001 #include <kdebug.h>
00002 #include <kabc/resourcefile.h>
00003
00004 #include "addressbooksyncee.h"
00005
00006 AddressBookSyncEntry::AddressBookSyncEntry( const KABC::Addressee &a ) :
00007 mAddressee( a )
00008 {
00009 }
00010
00011 QString AddressBookSyncEntry::name()
00012 {
00013 return mAddressee.realName();
00014 }
00015
00016 QString AddressBookSyncEntry::id()
00017 {
00018 return mAddressee.uid();
00019 }
00020
00021 QString AddressBookSyncEntry::timestamp()
00022 {
00023 return QString::null;
00024 }
00025
00026 bool AddressBookSyncEntry::equals( KSyncEntry *entry )
00027 {
00028 AddressBookSyncEntry *abEntry = dynamic_cast<AddressBookSyncEntry *>(entry);
00029 if ( !abEntry ) {
00030 kdDebug() << "AddressBookSyncee::equals(): Wrong type." << endl;
00031 return false;
00032 }
00033
00034 if ( mAddressee == abEntry->addressee() ) {
00035 kdDebug() << "AddressBookSyncEntry::equals(): '" << entry->name() << "':"
00036 << "equal" << endl;
00037 return true;
00038 } else {
00039 kdDebug() << "AddressBookSyncEntry::equals(): '" << entry->name() << "':"
00040 << "not equal" << endl;
00041 return false;
00042 }
00043 }
00044
00045 AddressBookSyncee::AddressBookSyncee()
00046 {
00047 mAddressBook = new KABC::AddressBook;
00048
00049 mEntries.setAutoDelete(true);
00050 }
00051
00052 AddressBookSyncee::~AddressBookSyncee()
00053 {
00054 delete mAddressBook;
00055 }
00056
00057 bool AddressBookSyncee::read()
00058 {
00059 ( void * ) new KABC::ResourceFile( mAddressBook, filename() );
00060 return mAddressBook->load();
00061 }
00062
00063 bool AddressBookSyncee::write()
00064 {
00065 KABC::Ticket *ticket = mAddressBook->requestSaveTicket();
00066 if ( !ticket ) return false;
00067 return mAddressBook->save( ticket );
00068 }
00069
00070
00071 AddressBookSyncEntry *AddressBookSyncee::firstEntry()
00072 {
00073 mAddressBookIterator = mAddressBook->begin();
00074 return createEntry( *mAddressBookIterator );
00075 }
00076
00077 AddressBookSyncEntry *AddressBookSyncee::nextEntry()
00078 {
00079 ++mAddressBookIterator;
00080 return createEntry( *mAddressBookIterator );
00081 }
00082
00083 #if 0
00084 AddressBookSyncEntry *AddressBookSyncee::findEntry(const QString &id)
00085 {
00086 Event *event = mAddressBook->getEvent(id);
00087 return createEntry(event);
00088 }
00089 #endif
00090
00091 void AddressBookSyncee::addEntry( KSyncEntry *entry )
00092 {
00093 AddressBookSyncEntry *abEntry = dynamic_cast<AddressBookSyncEntry *>(entry);
00094 if (!abEntry) {
00095 kdDebug() << "AddressBookSyncee::addEntry(): SyncEntry has wrong type."
00096 << endl;
00097 } else {
00098 mAddressBook->insertAddressee( abEntry->addressee() );
00099 }
00100 }
00101
00102 void AddressBookSyncee::removeEntry( KSyncEntry *entry )
00103 {
00104 AddressBookSyncEntry *abEntry = dynamic_cast<AddressBookSyncEntry *>(entry);
00105 if ( !abEntry ) {
00106 kdDebug() << "AddressBookSyncee::removeEntry(): SyncEntry has wrong type."
00107 << endl;
00108 } else {
00109 mAddressBook->removeAddressee( abEntry->addressee() );
00110 }
00111 }
00112
00113 AddressBookSyncEntry *AddressBookSyncee::createEntry( const KABC::Addressee &a )
00114 {
00115 if ( !a.isEmpty() ) {
00116 AddressBookSyncEntry *entry = new AddressBookSyncEntry( a );
00117 mEntries.append( entry );
00118 return entry;
00119 } else {
00120 return 0;
00121 }
00122 }
This file is part of the documentation for kdelibs Version 3.1.4.