aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/pop3/POP3Folder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/pop3/POP3Folder.cpp')
-rw-r--r--src/net/pop3/POP3Folder.cpp42
1 files changed, 4 insertions, 38 deletions
diff --git a/src/net/pop3/POP3Folder.cpp b/src/net/pop3/POP3Folder.cpp
index acffff7d..657e1bdd 100644
--- a/src/net/pop3/POP3Folder.cpp
+++ b/src/net/pop3/POP3Folder.cpp
@@ -22,6 +22,8 @@
#include "vmime/net/pop3/POP3Store.hpp"
#include "vmime/net/pop3/POP3Message.hpp"
+#include "vmime/net/pop3/POP3Utils.hpp"
+
#include "vmime/exception.hpp"
@@ -354,7 +356,7 @@ void POP3Folder::fetchMessages(std::vector <ref <message> >& msg, const int opti
// S: 2 12653
// S: .
std::map <int, string> result;
- parseMultiListOrUidlResponse(response, result);
+ POP3Utils::parseMultiListOrUidlResponse(response, result);
for (std::vector <ref <message> >::iterator it = msg.begin() ;
it != msg.end() ; ++it)
@@ -399,7 +401,7 @@ void POP3Folder::fetchMessages(std::vector <ref <message> >& msg, const int opti
// S: 2 QhdPYR:00WBw1Ph7x7
// S: .
std::map <int, string> result;
- parseMultiListOrUidlResponse(response, result);
+ POP3Utils::parseMultiListOrUidlResponse(response, result);
for (std::vector <ref <message> >::iterator it = msg.begin() ;
it != msg.end() ; ++it)
@@ -821,42 +823,6 @@ void POP3Folder::expunge()
}
-void POP3Folder::parseMultiListOrUidlResponse(const string& response, std::map <int, string>& result)
-{
- std::istringstream iss(response);
- std::map <int, string> ids;
-
- string line;
-
- while (std::getline(iss, line))
- {
- string::iterator it = line.begin();
-
- while (it != line.end() && (*it == ' ' || *it == '\t'))
- ++it;
-
- if (it != line.end())
- {
- int number = 0;
-
- while (it != line.end() && (*it >= '0' && *it <= '9'))
- {
- number = (number * 10) + (*it - '0');
- ++it;
- }
-
- while (it != line.end() && !(*it == ' ' || *it == '\t')) ++it;
- while (it != line.end() && (*it == ' ' || *it == '\t')) ++it;
-
- if (it != line.end())
- {
- result.insert(std::map <int, string>::value_type(number, string(it, line.end())));
- }
- }
- }
-}
-
-
} // pop3
} // net
} // vmime