kitchensync
engine.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KSYNC_ENGINE_H
00022 #define KSYNC_ENGINE_H
00023
00024 #include <konnector.h>
00025 #include <syncer.h>
00026
00027 #include <qobject.h>
00028 #include <qptrlist.h>
00029
00030 class KonnectorManager;
00031 class KonnectorPair;
00032
00033 namespace KSync {
00034
00035 class SyncUiKde;
00036
00043 class Engine : public QObject
00044 {
00045 Q_OBJECT
00046
00047 public:
00048 Engine();
00049 ~Engine();
00050
00051 static QString progressId();
00052
00053 void go( KonnectorPair *pair );
00054 void setResolveStrategy( int strategy );
00055
00056 protected:
00057 void logMessage( const QString& );
00058 void logError( const QString& );
00059
00060 void tryExecuteActions();
00061 void executeActions();
00062
00063 void tryFinish();
00064 void finish();
00065
00066 void disconnectDevice( Konnector *k );
00067
00068 protected slots:
00069 void slotSynceesRead( KSync::Konnector * );
00070 void slotSynceeReadError( KSync::Konnector * );
00071 void slotSynceesWritten( KSync::Konnector * );
00072 void slotSynceeWriteError( KSync::Konnector * );
00073
00074 signals:
00075 void error( const QString& );
00076 void doneSync();
00077
00078 private:
00079 void doSync();
00080
00081 Konnector::List mOpenedKonnectors;
00082 Konnector::List mProcessedKonnectors;
00083 uint mKonnectorCount;
00084
00085 Konnector::List mKonnectors;
00086 KonnectorManager *mManager;
00087
00088 Syncer mCalendarSyncer;
00089 Syncer mAddressBookSyncer;
00090
00091 SyncUi *mSyncUi;
00092 };
00093
00094 }
00095
00096 #endif
|