hierarchicalkeylistjob.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #ifndef __KLEO_HIERARCHICALKEYLISTJOB_H__
00034 #define __KLEO_HIERARCHICALKEYLISTJOB_H__
00035
00036 #include <kleo/keylistjob.h>
00037 #include <kleo/cryptobackend.h>
00038
00039 #include <gpgmepp/keylistresult.h>
00040
00041 #include <qcstring.h>
00042 #include <qguardedptr.h>
00043
00044 #include <set>
00045
00046 namespace GpgME {
00047 class Error;
00048 class Key;
00049 }
00050
00051 namespace Kleo {
00052 class KeyListJob;
00053 }
00054
00055 namespace Kleo {
00056
00070 class HierarchicalKeyListJob : public KeyListJob {
00071 Q_OBJECT
00072 public:
00073 HierarchicalKeyListJob( const CryptoBackend::Protocol * protocol,
00074 bool remote=false, bool includeSigs=false, bool validating=false );
00075 ~HierarchicalKeyListJob();
00076
00086 GpgME::Error start( const QStringList & patterns, bool secretOnly=false );
00087
00088 GpgME::KeyListResult exec( const QStringList & patterns, bool secretOnly,
00089 std::vector<GpgME::Key> & keys );
00090
00091 private slots:
00092 void slotResult( const GpgME::KeyListResult & );
00093 void slotNextKey( const GpgME::Key & key );
00095 void slotCancel();
00096
00097 private:
00098 GpgME::Error startAJob();
00099
00100 private:
00101 const CryptoBackend::Protocol * const mProtocol;
00102 const bool mRemote;
00103 const bool mIncludeSigs;
00104 const bool mValidating;
00105 bool mTruncated;
00106 std::set<QString> mSentSet;
00107 std::set<QString> mScheduledSet;
00108 std::set<QString> mNextSet;
00109 GpgME::KeyListResult mIntermediateResult;
00110 QGuardedPtr<KeyListJob> mJob;
00111 };
00112
00113 }
00114
00115 #endif // __KLEO_HIERARCHICALKEYLISTJOB_H__
This file is part of the documentation for certmanager Library Version 3.3.2.