00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_JOB_P_H
00021 #define AKONADI_JOB_P_H
00022
00023 #include "session.h"
00024
00025 namespace Akonadi {
00026
00030 class JobPrivate
00031 {
00032 public:
00033 JobPrivate( Job *parent )
00034 : q_ptr( parent ),
00035 mCurrentSubJob( 0 ),
00036 mWriteFinished( false ),
00037 mStarted( false )
00038 {
00039 }
00040
00041 virtual ~JobPrivate()
00042 {
00043 }
00044
00045 void init( QObject *parent );
00046
00047 void handleResponse( const QByteArray &tag, const QByteArray &data );
00048 void startQueued();
00049 void lostConnection();
00050 void slotSubJobAboutToStart( Akonadi::Job* );
00051 void startNext();
00052 void signalCreationToJobTracker();
00053 void delayedEmitResult();
00057 QByteArray newTag();
00058
00062 QByteArray tag() const;
00063
00067 void writeData( const QByteArray &data );
00068
00069 Job *q_ptr;
00070 Q_DECLARE_PUBLIC( Job )
00071
00072 Job *mParentJob;
00073 Job *mCurrentSubJob;
00074 QByteArray mTag;
00075 Session* mSession;
00076 bool mWriteFinished;
00077 bool mStarted;
00078 };
00079
00080 }
00081
00082 #endif