Bincimap 2.0.16
Easy Imapping
Loading...
Searching...
No Matches
imapparser.h
Go to the documentation of this file.
1
7#ifndef imapparser_h_included
8#define imapparser_h_included
9
10/* stl includes */
11#include <string>
12#include <map>
13#include <vector>
14
15namespace Binc {
16 //------------------------------------------------------------------------
18 public:
19 void addRange(unsigned int a_in, unsigned int b_in);
20 bool isInSet(unsigned int n) const;
21 void addNumber(unsigned int a_in);
22 inline bool isLimited(void) const { return limited; }
23
24 static SequenceSet &all(void);
25
26 static SequenceSet &null(void);
27
29
30 SequenceSet(void);
31 SequenceSet(const SequenceSet &copy);
32 ~SequenceSet(void);
33
34 protected:
35 bool isNull(void) const;
36
37 private:
38 bool limited;
39 bool nullSet;
40
41 class Range {
42 public:
43 unsigned int from;
44 unsigned int to;
45 Range(unsigned int from, unsigned int to);
46 };
47
48 std::vector<Range> internal;
49 };
50
51 //------------------------------------------------------------------------
53 public:
54 std::string type;
55 std::string section;
56 std::string sectiontext;
57 std::vector<std::string> headerlist;
58 unsigned int offsetstart;
59 unsigned int offsetlength;
61
62 BincImapParserFetchAtt(const std::string &typeName = "");
63
64 std::string toString(void);
65 };
66
67 //------------------------------------------------------------------------
69 public:
70 std::string name;
71 std::string date;
72 std::string astring;
73 std::string bstring;
74 int type;
75 unsigned int number;
78
79 std::vector<BincImapParserSearchKey> children;
80
81 const SequenceSet& getSet(void) const;
82
84 };
85
86 //------------------------------------------------------------------------
88 public:
89 virtual ~BincImapParserData(void) {}
90 };
91
92 //------------------------------------------------------------------------
93 class Request {
94 private:
95 std::string tag;
96 std::string name;
97 std::string mode;
98 std::string date;
99 std::string userid;
100 std::string password;
101 std::string mailbox;
102 std::string newmailbox;
103 std::string authtype;
104 std::string listmailbox;
105 std::string charset;
106 std::string literal;
107 std::string contextInfo;
108 bool uidmode;
109
110 public:
112 std::vector<std::string> flags;
113 std::vector<std::string> statuses;
114
117 std::vector<BincImapParserFetchAtt> fatt;
118
119 void setUidMode(void);
120 bool getUidMode(void) const;
121
122 void setTag(std::string &t_in);
123 const std::string &getTag(void) const;
124
125 void setMode(const std::string &m_in);
126 const std::string &getMode(void) const;
127
128 void setName(const std::string &s_in);
129 const std::string &getName(void) const;
130
131 void setLiteral(const std::string &s_in);
132 const std::string &getLiteral(void) const;
133
134 void setDate(const std::string &s_in);
135 const std::string &getDate(void) const;
136
137 void setCharSet(const std::string &s_in);
138 const std::string &getCharSet(void) const;
139
140 void setUserID(const std::string &s_in);
141 const std::string &getUserID(void) const;
142
143 void setPassword(const std::string &s_in);
144 const std::string &getPassword(void) const;
145
146 void setMailbox(const std::string &s_in);
147 const std::string &getMailbox(void) const;
148
149 void setAuthType(const std::string &s_in);
150 const std::string &getAuthType(void) const;
151
152 void setNewMailbox(const std::string &s_in);
153 const std::string &getNewMailbox(void) const;
154
155 void setListMailbox(const std::string &s_in);
156 const std::string &getListMailbox(void) const;
157
158 void setContextInfo(const std::string &s_in);
159 const std::string &getContextInfo(void) const;
160
161 SequenceSet &getSet(void);
162
163 std::vector<std::string> &getFlags(void);
164 std::vector<std::string> &getStatuses(void);
165
166 Request(void);
167 ~Request(void);
168 };
169}
170
171#endif
virtual ~BincImapParserData(void)
Definition: imapparser.h:89
std::vector< std::string > headerlist
Definition: imapparser.h:57
std::string toString(void)
Definition: imapparser.cc:328
std::vector< BincImapParserSearchKey > children
Definition: imapparser.h:79
const SequenceSet & getSet(void) const
Definition: imapparser.cc:376
const std::string & getTag(void) const
Definition: imapparser.cc:52
std::vector< BincImapParserFetchAtt > fatt
Definition: imapparser.h:117
const std::string & getDate(void) const
Definition: imapparser.cc:112
const std::string & getName(void) const
Definition: imapparser.cc:76
void setNewMailbox(const std::string &s_in)
Definition: imapparser.cc:191
void setCharSet(const std::string &s_in)
Definition: imapparser.cc:118
void setDate(const std::string &s_in)
Definition: imapparser.cc:106
void setMailbox(const std::string &s_in)
Definition: imapparser.cc:155
void setTag(std::string &t_in)
Definition: imapparser.cc:46
std::vector< std::string > & getFlags(void)
Definition: imapparser.cc:215
const std::string & getUserID(void) const
Definition: imapparser.cc:137
void setPassword(const std::string &s_in)
Definition: imapparser.cc:143
const std::string & getMode(void) const
Definition: imapparser.cc:64
SequenceSet bset
Definition: imapparser.h:115
void setName(const std::string &s_in)
Definition: imapparser.cc:70
void setUidMode(void)
Definition: imapparser.cc:34
~Request(void)
Definition: imapparser.cc:27
void setLiteral(const std::string &s_in)
Definition: imapparser.cc:94
const std::string & getListMailbox(void) const
Definition: imapparser.cc:173
const std::string & getMailbox(void) const
Definition: imapparser.cc:161
void setMode(const std::string &m_in)
Definition: imapparser.cc:58
const std::string & getPassword(void) const
Definition: imapparser.cc:149
void setUserID(const std::string &s_in)
Definition: imapparser.cc:131
std::vector< std::string > flags
Definition: imapparser.h:112
BincImapParserData * extra
Definition: imapparser.h:111
bool getUidMode(void) const
Definition: imapparser.cc:40
const std::string & getContextInfo(void) const
Definition: imapparser.cc:185
std::vector< std::string > statuses
Definition: imapparser.h:113
void setContextInfo(const std::string &s_in)
Definition: imapparser.cc:179
void setAuthType(const std::string &s_in)
Definition: imapparser.cc:82
std::vector< std::string > & getStatuses(void)
Definition: imapparser.cc:209
void setListMailbox(const std::string &s_in)
Definition: imapparser.cc:167
SequenceSet & getSet(void)
Definition: imapparser.cc:203
const std::string & getNewMailbox(void) const
Definition: imapparser.cc:197
const std::string & getAuthType(void) const
Definition: imapparser.cc:88
const std::string & getLiteral(void) const
Definition: imapparser.cc:100
const std::string & getCharSet(void) const
Definition: imapparser.cc:125
BincImapParserSearchKey searchkey
Definition: imapparser.h:116
static SequenceSet & all(void)
Definition: imapparser.cc:261
SequenceSet & operator=(const SequenceSet &copy)
Definition: imapparser.cc:232
void addRange(unsigned int a_in, unsigned int b_in)
Definition: imapparser.cc:287
bool isNull(void) const
Definition: imapparser.cc:255
bool isInSet(unsigned int n) const
Definition: imapparser.cc:301
void addNumber(unsigned int a_in)
Definition: imapparser.cc:294
bool isLimited(void) const
Definition: imapparser.h:22
static SequenceSet & null(void)
Definition: imapparser.cc:247
Definition: bincimapd.cc:9