kmail
KMFolderCachedImap Class Reference

Detailed Description
Definition at line 89 of file kmfoldercachedimap.h.
Public Types | |
enum | imapState { imapNoInformation = 0, imapInProgress = 1, imapFinished = 2 } |
enum | IncidencesFor { IncForNobody, IncForAdmins, IncForReaders } |
typedef QValueVector < KMail::ACLListEntry > | ACLList |
Public Slots | |
void | slotSimpleData (KIO::Job *job, const QByteArray &data) |
void | slotTroubleshoot () |
void | slotListResult (const QStringList &, const QStringList &, const QStringList &, const QStringList &, const ImapAccountBase::jobData &) |
void | slotCheckNamespace (const QStringList &, const QStringList &, const QStringList &, const QStringList &, const ImapAccountBase::jobData &) |
Signals | |
void | folderComplete (KMFolderCachedImap *folder, bool success) |
void | listComplete (KMFolderCachedImap *) |
void | syncState (int state, int number) |
Public Member Functions | |
KMFolderCachedImap (KMFolder *folder, const char *name=0) | |
virtual | ~KMFolderCachedImap () |
void | reallyDoClose (const char *owner) |
void | initializeFrom (KMFolderCachedImap *parent) |
virtual void | readConfig () |
virtual void | writeConfig () |
void | writeConfigKeysWhichShouldNotGetOverwrittenByReadConfig () |
virtual KMFolderType | folderType () const |
virtual int | create () |
virtual void | remove () |
virtual void | serverSync (bool recurse) |
void | resetSyncState () |
void | checkUidValidity () |
virtual imapState | getContentState () |
virtual void | setContentState (imapState state) |
virtual imapState | getSubfolderState () |
virtual void | setSubfolderState (imapState state) |
void | setImapPath (const QString &path) |
QString | imapPath () const |
void | setLastUid (ulong uid) |
ulong | lastUid () |
KMMsgBase * | findByUID (ulong uid) |
void | setUidValidity (const QString &validity) |
QString | uidValidity () const |
void | clearUidMap () |
void | setAccount (KMAcctCachedImap *acct) |
KMAcctCachedImap * | account () const |
QString | uidCacheLocation () const |
int | readUidCache () |
int | writeUidCache () |
int | progress () const |
virtual int | rename (const QString &aName, KMFolderDir *aParent=0) |
virtual KMMessage * | take (int idx) |
virtual int | addMsg (KMMessage *msg, int *index_return=0) |
virtual int | addMsgInternal (KMMessage *msg, bool, int *index_return=0) |
virtual int | addMsgKeepUID (KMMessage *msg, int *index_return=0) |
virtual void | removeMsg (int i, bool imapQuiet=FALSE) |
virtual void | removeMsg (QPtrList< KMMessage > msgList, bool imapQuiet=FALSE) |
bool | isReadOnly () const |
void | sendFolderComplete (bool success) |
void | setSilentUpload (bool silent) |
bool | silentUpload () |
virtual int | createIndexFromContents () |
int | createIndexFromContentsRecursive () |
virtual bool | listDirectory () |
virtual void | listNamespaces () |
KMFolder * | trashFolder () const |
int | userRights () const |
void | setUserRights (unsigned int userRights) |
const QuotaInfo | quotaInfo () const |
const ACLList & | aclList () const |
void | setACLList (const ACLList &arr) |
virtual void | setStatus (int id, KMMsgStatus status, bool toggle) |
virtual void | setStatus (QValueList< int > &ids, KMMsgStatus status, bool toggle) |
QString | annotationFolderType () const |
void | updateAnnotationFolderType () |
IncidencesFor | incidencesFor () const |
void | setIncidencesFor (IncidencesFor incfor) |
virtual bool | isMoveable () const |
QStringList | namespacesToList () |
void | setNamespacesToList (QStringList list) |
const QString & | imapPathForCreation () |
void | setImapPathForCreation (const QString &path) |
Static Public Member Functions | |
static QString | cacheLocation () |
Protected Slots | |
void | slotGetMessagesData (KIO::Job *job, const QByteArray &data) |
void | getMessagesResult (KMail::FolderJob *, bool lastSet) |
void | slotGetLastMessagesResult (KMail::FolderJob *) |
void | slotProgress (unsigned long done, unsigned long total) |
void | slotPutProgress (unsigned long, unsigned long) |
void | slotSubFolderComplete (KMFolderCachedImap *, bool) |
void | slotConnectionResult (int errorCode, const QString &errorMsg) |
void | slotCheckUidValidityResult (KMail::FolderJob *job) |
void | slotTestAnnotationResult (KIO::Job *job) |
void | slotGetAnnotationResult (KIO::Job *) |
void | slotMultiUrlGetAnnotationResult (KIO::Job *) |
void | slotSetAnnotationResult (KIO::Job *job) |
void | slotReceivedUserRights (KMFolder *) |
void | slotReceivedACL (KMFolder *, KIO::Job *, const KMail::ACLList &) |
void | slotMultiSetACLResult (KIO::Job *) |
void | slotACLChanged (const QString &, int) |
void | slotAnnotationResult (const QString &entry, const QString &value, bool found) |
void | slotAnnotationChanged (const QString &entry, const QString &attribute, const QString &value) |
void | slotDeleteMessagesResult (KMail::FolderJob *) |
void | slotImapStatusChanged (KMFolder *folder, const QString &, bool) |
void | slotStorageQuotaResult (const QuotaInfo &) |
void | slotQuotaResult (KIO::Job *job) |
Protected Member Functions | |
bool | deleteMessages () |
void | listMessages () |
void | uploadNewMessages () |
void | uploadFlags () |
void | uploadSeenFlags () |
void | createNewFolders () |
void | listDirectory2 () |
void | createFoldersNewOnServerAndFinishListing (const QValueVector< int > foldersNewOnServer) |
virtual QValueList < unsigned long > | findNewMessages () |
virtual QValueList < KMFolderCachedImap * > | findNewFolders () |
virtual bool | canRemoveFolder () const |
virtual FolderJob * | doCreateJob (KMMessage *msg, FolderJob::JobType jt, KMFolder *folder, QString partSpecifier, const AttachmentStrategy *as) const |
virtual FolderJob * | doCreateJob (QPtrList< KMMessage > &msgList, const QString &sets, FolderJob::JobType jt, KMFolder *folder) const |
virtual void | timerEvent (QTimerEvent *) |
void | newState (int progress, const QString &syncStatus) |
KMFolderCachedImap * | findParent (const QString &path, const QString &name) |
Member Typedef Documentation
typedef QValueVector<KMail::ACLListEntry> KMFolderCachedImap::ACLList |
Member Enumeration Documentation
Definition at line 132 of file kmfoldercachedimap.h.
Free-busy and alarms relevance of this folder, i.e.
for whom should events in this calendar lead to "busy" periods in their freebusy lists, and who should get alarms for the incidences in this folder. Applies to Calendar and Task folders only.
IncForNobody: not relevant for free-busy and alarms to anybody IncForAdmins: apply to persons with admin permissions on this calendar IncForReaders: apply to all readers of this calendar
Definition at line 271 of file kmfoldercachedimap.h.
Constructor & Destructor Documentation
KMFolderCachedImap::KMFolderCachedImap | ( | KMFolder * | folder, | |
const char * | name = 0 | |||
) |
Usually a parent is given.
But in some cases there is no fitting parent object available. Then the name of the folder is used as the absolute path to the folder file.
Definition at line 170 of file kmfoldercachedimap.cpp.
Member Function Documentation
void KMFolderCachedImap::reallyDoClose | ( | const char * | owner | ) | [virtual] |
void KMFolderCachedImap::initializeFrom | ( | KMFolderCachedImap * | parent | ) |
Initialize this storage from another one.
Used when creating a child folder
Definition at line 217 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::readConfig | ( | void | ) | [virtual] |
Read the config file.
Reimplemented from FolderStorage.
Definition at line 226 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::writeConfig | ( | void | ) | [virtual] |
Write the config file.
Reimplemented from FolderStorage.
Definition at line 286 of file kmfoldercachedimap.cpp.
virtual KMFolderType KMFolderCachedImap::folderType | ( | ) | const [inline, virtual] |
Returns the type of this folder.
Reimplemented from KMFolderMaildir.
Definition at line 116 of file kmfoldercachedimap.h.
int KMFolderCachedImap::create | ( | ) | [virtual] |
void KMFolderCachedImap::remove | ( | ) | [virtual] |
Remove this folder.
Reimplemented from FolderStorage.
Definition at line 349 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::serverSync | ( | bool | recurse | ) | [virtual] |
Synchronize this folder and it's subfolders with the server.
Definition at line 675 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::resetSyncState | ( | ) |
void KMFolderCachedImap::setImapPath | ( | const QString & | path | ) |
void KMFolderCachedImap::setLastUid | ( | ulong | uid | ) |
KMMsgBase * KMFolderCachedImap::findByUID | ( | ulong | uid | ) |
Find message by UID.
Returns NULL if it doesn't exist
Definition at line 572 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::setUidValidity | ( | const QString & | validity | ) | [inline] |
void KMFolderCachedImap::clearUidMap | ( | ) | [inline] |
Forget which mails are considered locally present.
Needed when uidvalidity changes.
Definition at line 157 of file kmfoldercachedimap.h.
void KMFolderCachedImap::setAccount | ( | KMAcctCachedImap * | acct | ) |
The imap account associated with this folder.
Definition at line 1851 of file kmfoldercachedimap.cpp.
QString KMFolderCachedImap::uidCacheLocation | ( | ) | const |
int KMFolderCachedImap::readUidCache | ( | ) |
Read the uidValitidy and lastUid values from disk.
Definition at line 370 of file kmfoldercachedimap.cpp.
int KMFolderCachedImap::writeUidCache | ( | ) |
Write the uidValitidy and lastUid values to disk.
Definition at line 397 of file kmfoldercachedimap.cpp.
int KMFolderCachedImap::progress | ( | ) | const [inline] |
int KMFolderCachedImap::rename | ( | const QString & | newName, | |
KMFolderDir * | aParent = 0 | |||
) | [virtual] |
Physically rename the folder.
Returns zero on success and an errno on failure.
Reimplemented from FolderStorage.
Definition at line 513 of file kmfoldercachedimap.cpp.
KMMessage * KMFolderCachedImap::take | ( | int | idx | ) | [virtual] |
Detach message from this folder.
Usable to call addMsg() afterwards. Loads the message if it is not loaded up to now.
Reimplemented from KMFolderMaildir.
Definition at line 445 of file kmfoldercachedimap.cpp.
int KMFolderCachedImap::addMsg | ( | KMMessage * | msg, | |
int * | index_return = 0 | |||
) | [virtual] |
Add the given message to the folder.
Usually the message is added at the end of the folder. Returns zero on success and an errno error code on failure. The index of the new message is stored in index_return if given. Please note that the message is added as is to the folder and the folder takes ownership of the message (deleting it in the destructor).
Reimplemented from KMFolderMaildir.
Definition at line 473 of file kmfoldercachedimap.cpp.
virtual int KMFolderCachedImap::addMsgKeepUID | ( | KMMessage * | msg, | |
int * | index_return = 0 | |||
) | [inline, virtual] |
(Note(bo): This needs to be fixed better at a later point.
) This is overridden by dIMAP because addMsg strips the X-UID header from the mail.
Reimplemented from FolderStorage.
Definition at line 184 of file kmfoldercachedimap.h.
void KMFolderCachedImap::removeMsg | ( | int | i, | |
bool | imapQuiet = FALSE | |||
) | [virtual] |
Remove (first occurrence of) given message from the folder.
Reimplemented from KMFolderMaildir.
Definition at line 492 of file kmfoldercachedimap.cpp.
bool KMFolderCachedImap::isReadOnly | ( | ) | const [inline, virtual] |
Is the folder readonly?
Reimplemented from KMFolderMaildir.
Definition at line 194 of file kmfoldercachedimap.h.
void KMFolderCachedImap::sendFolderComplete | ( | bool | success | ) | [inline] |
void KMFolderCachedImap::setSilentUpload | ( | bool | silent | ) | [inline] |
The silentUpload can be set to remove the folder upload error dialog.
Definition at line 205 of file kmfoldercachedimap.h.
virtual int KMFolderCachedImap::createIndexFromContents | ( | ) | [inline, virtual] |
Create index file from messages file and fill the message-info list mMsgList.
Returns 0 on success and an errno value (see fopen) on failure.
Reimplemented from KMFolderMaildir.
Definition at line 208 of file kmfoldercachedimap.h.
bool KMFolderCachedImap::listDirectory | ( | ) | [virtual] |
List a directory and add the contents to kmfoldermgr It uses a ListJob to get the folders returns false if the connection failed.
Definition at line 1985 of file kmfoldercachedimap.cpp.
KMFolder * KMFolderCachedImap::trashFolder | ( | ) | const [virtual] |
Return the trash folder.
Reimplemented from FolderStorage.
Definition at line 544 of file kmfoldercachedimap.cpp.
int KMFolderCachedImap::userRights | ( | ) | const [inline] |
The user's rights on this folder - see bitfield in ACLJobs namespace.
- Returns:
- 0 when not known yet, -1 if there was an error fetching them
Definition at line 231 of file kmfoldercachedimap.h.
void KMFolderCachedImap::setUserRights | ( | unsigned int | userRights | ) |
Set the user's rights on this folder - called by getUserRights.
Definition at line 2316 of file kmfoldercachedimap.cpp.
const QuotaInfo KMFolderCachedImap::quotaInfo | ( | ) | const [inline] |
The quota information for this folder.
- Returns:
- an invalid info if we haven't synced yet, or the server doesn't support quota. The difference can be figured out by asking the account whether it supports quota. If we have synced, the account supports quota, but there is no quota on the folder, the return info will be valid, but empty.
- See also:
- QuotaInfo::isEmpty(), QuotaInfo::isValid()
Definition at line 245 of file kmfoldercachedimap.h.
void KMFolderCachedImap::setACLList | ( | const ACLList & | arr | ) |
Set the list of ACL for this folder (for FolderDiaACLTab).
Definition at line 2365 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::setStatus | ( | int | idx, | |
KMMsgStatus | status, | |||
bool | toggle | |||
) | [virtual] |
Set the status of the message at index idx
to status
.
Reimplemented from FolderStorage.
Definition at line 1520 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::setStatus | ( | QValueList< int > & | ids, | |
KMMsgStatus | status, | |||
bool | toggle | |||
) | [virtual] |
Set the status of the message(s) in the QValueList ids
to status
.
Reimplemented from FolderStorage.
Definition at line 1526 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::setIncidencesFor | ( | IncidencesFor | incfor | ) |
bool KMFolderCachedImap::isMoveable | ( | ) | const [virtual] |
Returns true if this folder can be moved.
Reimplemented from FolderStorage.
Definition at line 2778 of file kmfoldercachedimap.cpp.
QStringList KMFolderCachedImap::namespacesToList | ( | ) | [inline] |
List of namespaces that need to be queried Is set by the account for the root folder when the listing starts.
Definition at line 284 of file kmfoldercachedimap.h.
const QString& KMFolderCachedImap::imapPathForCreation | ( | ) | [inline] |
Specify an imap path that is used to create the folder on the server Otherwise the parent folder is used to construct the path.
Definition at line 291 of file kmfoldercachedimap.h.
QValueList< unsigned long > KMFolderCachedImap::findNewMessages | ( | ) | [protected, virtual] |
Utility methods for syncing.
Finds new messages in the local cache that must be uploaded
Definition at line 1265 of file kmfoldercachedimap.cpp.
QValueList< KMFolderCachedImap * > KMFolderCachedImap::findNewFolders | ( | ) | [protected, virtual] |
Utility methods for syncing.
Finds new subfolders in the local cache that must be created in the server
Definition at line 1548 of file kmfoldercachedimap.cpp.
bool KMFolderCachedImap::canRemoveFolder | ( | ) | const [protected, virtual] |
This returns false if we have subfolders.
Otherwise it returns canRemoveFolder()
Definition at line 500 of file kmfoldercachedimap.cpp.
virtual FolderJob* KMFolderCachedImap::doCreateJob | ( | KMMessage * | msg, | |
FolderJob::JobType | jt, | |||
KMFolder * | folder, | |||
QString | partSpecifier, | |||
const AttachmentStrategy * | as | |||
) | const [protected, virtual] |
KMFolderCachedImap * KMFolderCachedImap::findParent | ( | const QString & | path, | |
const QString & | name | |||
) | [protected] |
See if there is a better parent then this folder.
Definition at line 2230 of file kmfoldercachedimap.cpp.
void KMFolderCachedImap::slotSimpleData | ( | KIO::Job * | job, | |
const QByteArray & | data | |||
) | [slot] |
Add the data a KIO::Job retrieves to the buffer.
void KMFolderCachedImap::slotTroubleshoot | ( | ) | [slot] |
void KMFolderCachedImap::slotListResult | ( | const QStringList & | , | |
const QStringList & | , | |||
const QStringList & | , | |||
const QStringList & | , | |||
const ImapAccountBase::jobData & | ||||
) | [slot] |
Connected to ListJob::receivedFolders creates/removes folders.
void KMFolderCachedImap::slotCheckNamespace | ( | const QStringList & | , | |
const QStringList & | , | |||
const QStringList & | , | |||
const QStringList & | , | |||
const ImapAccountBase::jobData & | ||||
) | [slot] |
Connected to ListJob::receivedFolders creates namespace folders.
void KMFolderCachedImap::syncState | ( | int | state, | |
int | number | |||
) | [signal] |
emitted when we enter the state "state" and have to process "number" items (for example messages
The documentation for this class was generated from the following files: