diff options
author | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2015-10-25 20:51:23 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2015-10-25 20:51:23 +0300 |
commit | 89dbfd1a2e9cee5bb7c219ba121e7e922d7dfa7a (patch) | |
tree | 737925d830bfc2eb05766914ef46a08937c338b7 /server/include/client.h | |
parent | 62d571ffe85696b260cfe188db4ed09915a5e7d3 (diff) |
protocol:
a bit of work with "client_event_subscription_request"
some comments
server:
event subsystem:
event's object class skeleton
very basic event subscription handler
Diffstat (limited to 'server/include/client.h')
-rw-r--r-- | server/include/client.h | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/server/include/client.h b/server/include/client.h index f9daff6..d6668a3 100644 --- a/server/include/client.h +++ b/server/include/client.h @@ -1,19 +1,47 @@ +/* + Copyright © 2015 Gluzskiy Alexandr (sss) + + This file is part of Unknown Download Manager (UDM). + + UDM 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 + (at your option) any later version. + + UDM 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 UDM. If not, see <http://www.gnu.org/licenses/>. + +*/ + #ifndef CLIENT_H #define CLIENT_H #include <string> +#include <list> +#include "event_subscription_base.h" + +class server_session; class client { public: - client(std::string &client_auth_token); + client(std::string &client_auth_token, server_session *sess = nullptr); + void add_event_subscription(event_subscription_base* e); virtual ~client(); protected: private: //TODO: client subscriptions should be stored here //TODO: list of timers with direct callbacks to functions for periodic subscription (bost::asio::deadline_timer) //TODO: store sessions ptr list + //TODO: some way to call core and mopdules api from here std::string auth_token; + server_session *session; + std::list<event_subscription_base*> subscriptions; }; #endif // CLIENT_H |