diff options
author | Andrei Karas <akaras@inbox.ru> | 2017-06-12 23:59:57 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2017-06-12 23:59:57 +0300 |
commit | 28c6adc21db25de911fddc48912a61b101bfae84 (patch) | |
tree | 7dafa14cbbe0c7b51a9aec5e97ec11c888f349be /src/net | |
parent | 5546a30788216ca9bab885cc97744ef8240dc32f (diff) | |
download | manaplus-28c6adc21db25de911fddc48912a61b101bfae84.tar.gz manaplus-28c6adc21db25de911fddc48912a61b101bfae84.tar.bz2 manaplus-28c6adc21db25de911fddc48912a61b101bfae84.tar.xz manaplus-28c6adc21db25de911fddc48912a61b101bfae84.zip |
Load sources url list for each server from servers list xml.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/serverinfo.h | 11 | ||||
-rw-r--r-- | src/net/serverurlinfo.h | 49 |
2 files changed, 60 insertions, 0 deletions
diff --git a/src/net/serverinfo.h b/src/net/serverinfo.h index e83e51b56..ab4a99081 100644 --- a/src/net/serverinfo.h +++ b/src/net/serverinfo.h @@ -27,6 +27,7 @@ #include "enums/net/servertype.h" #include "net/hostsgroup.h" +#include "net/serverurlinfo.h" #include "utils/stringutils.h" @@ -49,6 +50,8 @@ class ServerInfo final std::string defaultHostName; std::vector<std::string> updateMirrors; std::vector<HostsGroup> updateHosts; + std::vector<ServerUrlInfo> freeSources; + std::vector<ServerUrlInfo> nonFreeSources; uint16_t port; VersionString version; int packetVersion; @@ -68,6 +71,8 @@ class ServerInfo final defaultHostName(), updateMirrors(), updateHosts(), + freeSources(), + nonFreeSources(), #ifdef TMWA_SUPPORT port(6901), #else // TMWA_SUPPORT @@ -94,6 +99,8 @@ class ServerInfo final defaultHostName(info.defaultHostName), updateMirrors(info.updateMirrors), updateHosts(info.updateHosts), + freeSources(info.freeSources), + nonFreeSources(info.nonFreeSources), port(info.port), version(), packetVersion(info.packetVersion), @@ -120,6 +127,8 @@ class ServerInfo final defaultHostName = info.defaultHostName; updateMirrors = info.updateMirrors; updateHosts = info.updateHosts; + freeSources = info.freeSources; + nonFreeSources = info.nonFreeSources; port = info.port; save = info.save; persistentIp = info.persistentIp; @@ -150,6 +159,8 @@ class ServerInfo final defaultHostName.clear(); updateMirrors.clear(); updateHosts.clear(); + freeSources.clear(); + nonFreeSources.clear(); version.first = 0; version.second.clear(); packetVersion = 0; diff --git a/src/net/serverurlinfo.h b/src/net/serverurlinfo.h new file mode 100644 index 000000000..8ef5b4d7b --- /dev/null +++ b/src/net/serverurlinfo.h @@ -0,0 +1,49 @@ +/* + * The ManaPlus Client + * Copyright (C) 2016-2017 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef NET_SERVERURLINFO_H +#define NET_SERVERURLINFO_H + +#include "localconsts.h" + +#include <string> + +struct ServerUrlInfo final +{ + ServerUrlInfo() : + name(), + url() + { + } + + ServerUrlInfo(const std::string name0, + const std::string url0) : + name(name0), + url(url0) + { + } + + A_DEFAULT_COPY(ServerUrlInfo) + + std::string name; + std::string url; +}; + +#endif // NET_SERVERURLINFO_H |