summaryrefslogtreecommitdiff
path: root/client/Config.h
diff options
context:
space:
mode:
authorAlex Borisov <borisov.alexandr@rambler.ru>2011-10-25 03:55:49 +0300
committerAlex Borisov <borisov.alexandr@rambler.ru>2011-10-25 03:55:49 +0300
commit3899450af16a0162aac8e91c5487c2a802c609d7 (patch)
treeef93e1ce5905ebb1e86b569cd0556e9338075ab2 /client/Config.h
parent1f9964403d3cb448b7e866d8adcb5560f9c46c33 (diff)
Config method to acquire country/state/city names. Doxygen docs
Diffstat (limited to 'client/Config.h')
-rw-r--r--client/Config.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/client/Config.h b/client/Config.h
index 9b8a53e..ad30ebf 100644
--- a/client/Config.h
+++ b/client/Config.h
@@ -9,12 +9,64 @@
class ProxyEntryGeneric;
class ProxyEntryStatic;
+/**
+ * @brief Singleton class that represents client configuration
+ */
class Config
{
public:
+ /**
+ * @brief Retrieve application-wide instance of Config class
+ * @return Pointer to singleton instance of Config class
+ */
static Config *CurrentConfig();
+
+ /**
+ * @brief Update client configuration
+ * @todo update config periodically on timer events
+ */
void AcquireConfig();
+
+ /**
+ * @brief Check whether current confguration is valid <br/>
+ * It may become invalid in case if server is not reachable.
+ * So every time you want to access Config membres or methods you should check this value
+ * @return true if configuration is valid and false otherwise
+ */
bool IsConfigValid();
+
+ /**
+ * @brief Get list of country names where at least one proxy available<br/>
+ * (generic proxy records only)
+ * @return Alphabetically sorted vector<string> with unique country names
+ */
+ std::vector<std::string> GetCountries();
+
+ /**
+ * @brief Get list of country states where at least one proxy available<br/>
+ * (generic proxy records only)
+ * @param country name of country to get list of states for
+ * @return Alphabetically sorted vector<string> with unique state names.<br/>
+ * Resultant vector<string> may be empty in case if there are no states in specified country
+ */
+ std::vector<std::string> GetStates(std::string &country);
+
+ /**
+ * @brief Get list of cities in particular country without states<br/>
+ * (generic proxy records only)
+ * @param country name of country to get list of states for
+ * @return Alphabetically sorted vector<string> with unique city names<br/>
+ */
+ std::vector<std::string> GetCities(std::string &country);
+
+ /**
+ * @brief Get list of cities in particular country and state<br/>
+ * (generic proxy records only)
+ * @param country name of country to get list of states for
+ * @param state name state to get list of proxies for<br/>
+ * @return Alphabetically sorted vector<string> with unique city names
+ */
+ std::vector<std::string> GetCities(std::string &country, std::string &state);
protected:
Config();
private: