diff options
Diffstat (limited to 'libmail/smapopen.H')
| -rw-r--r-- | libmail/smapopen.H | 56 | 
1 files changed, 56 insertions, 0 deletions
| diff --git a/libmail/smapopen.H b/libmail/smapopen.H new file mode 100644 index 0000000..2edf04f --- /dev/null +++ b/libmail/smapopen.H @@ -0,0 +1,56 @@ +/* +** Copyright 2003, Double Precision Inc. +** +** See COPYING for distribution information. +*/ +#ifndef libmail_smapopen_H +#define libmail_smapopen_H + +#include "libmail_config.h" +#include	"mail.H" +#include	"imap.H" +#include	"smap.H" + +#include	<vector> + +LIBMAIL_START + +class smapFOLDER; + +class smapOPEN : public smapHandler { + +	std::string path; +	mail::snapshot *restoreSnapshot; +	mail::callback::folder &folderCallback; + +	smapFOLDER *newSmapFolder; + +	const char *getName(); + +	size_t exists; + +	bool restoringSnapshot; +	size_t presnapshotExists; + +	class SnapshotRestoreHelper; + +public: +	smapOPEN(std::string pathArg, +		 mail::snapshot *restoreSnapshotArg, +		 mail::callback &openCallbackArg, +		 mail::callback::folder &folderCallbackArg); + +	~smapOPEN(); +	void installed(imap &); +	bool processLine(imap &imapAccount, +			 std::vector<const char *> &words); +	bool ok(std::string); + +	void messagesRemoved(std::vector< std::pair<size_t, size_t> > +			     &removedList); +	void messageChanged(size_t msgNum); +}; + +LIBMAIL_END + +#endif | 
