summaryrefslogtreecommitdiff
path: root/src/serverinfo.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2019-08-26 01:07:03 -0400
committerisanae <14251494+isanae@users.noreply.github.com>2019-08-26 01:07:03 -0400
commitaff3ee8fcf427c9ff8c554a179222eabec3a95e2 (patch)
tree3dde0e860cd7dd4bdd8d487d5a84f27715929068 /src/serverinfo.cpp
parent36dbb4bad74b097d44b843a2e934aa4a58ef6492 (diff)
moved preferred servers into ServerList
Diffstat (limited to 'src/serverinfo.cpp')
-rw-r--r--src/serverinfo.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/serverinfo.cpp b/src/serverinfo.cpp
index 67a80b9e..70cdec6d 100644
--- a/src/serverinfo.cpp
+++ b/src/serverinfo.cpp
@@ -52,6 +52,10 @@ void ServerInfo::setPreferred(int i)
void ServerList::add(ServerInfo s)
{
m_servers.push_back(std::move(s));
+
+ std::sort(m_servers.begin(), m_servers.end(), [](auto&& a, auto&& b){
+ return (a.preferred() < b.preferred());
+ });
}
ServerList::iterator ServerList::begin()
@@ -83,3 +87,16 @@ bool ServerList::empty() const
{
return m_servers.empty();
}
+
+ServerList::container ServerList::getPreferred() const
+{
+ container v;
+
+ for (const auto& server : m_servers) {
+ if (server.preferred() > 0) {
+ v.push_back(server);
+ }
+ }
+
+ return v;
+}