diff options
author | Ossama Othman <ossama.othman@intel.com> | 2013-10-03 13:35:02 -0700 |
---|---|---|
committer | Ossama Othman <ossama.othman@intel.com> | 2013-10-03 14:10:29 -0700 |
commit | 9481ce3c822a1c9734068f8902e79547afc0d38b (patch) | |
tree | 096aa0fc6eba1c8449281385476f795924d94802 /src/websocket_server.hpp | |
parent | 38bb9a71ff04daff8702f20fed901831b690e29b (diff) | |
download | settings-daemon-tizen_ivi_genivi.tar.gz settings-daemon-tizen_ivi_genivi.tar.bz2 settings-daemon-tizen_ivi_genivi.zip |
TIVI-1924: Initial commit of IVI settings daemon.submit/tizen_ivi_release/20131120.032742submit/tizen_ivi_milestone/20131113.054518submit/tizen_ivi_genivi/20140131.070647submit/tizen_ivi_generic/20140131.065503submit/tizen/20131003.211152ivi_oct_m2accepted/tizen_ivi_release/20131120.050012accepted/tizen/ivi/genivi/20140131.070902accepted/tizen/20131003.220350accepted/tizen/20131003.215933tizen_ivi_genivi
This daemon provides a native backend to the Settings app.
It fills functionality gaps in the Web API, such as WiFi and
date/time, required by the Settings app.
This version contains support for unsecured WiFi connections
and setting the date and time.
Change-Id: I2810d0910029c4ed146e9ff740c246d428767649
Signed-off-by: Ossama Othman <ossama.othman@intel.com>
Diffstat (limited to 'src/websocket_server.hpp')
-rw-r--r-- | src/websocket_server.hpp | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/src/websocket_server.hpp b/src/websocket_server.hpp new file mode 100644 index 0000000..c7a6e09 --- /dev/null +++ b/src/websocket_server.hpp @@ -0,0 +1,92 @@ +/** + * @file websocket_server.hpp + * + * @brief Settings daemon WebSocket server header. + * + * @author Ossama Othman @<ossama.othman@@intel.com@> + * + * @copyright @par + * Copyright 2013 Intel Corporation All Rights Reserved. + * @par + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License. + * @par + * This library 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 + * Lesser General Public License for more details. + * @par + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA + * + * @note This header is internal. + */ + +#ifndef IVI_SETTINGS_WEBSOCKET_SERVER_HPP +#define IVI_SETTINGS_WEBSOCKET_SERVER_HPP + +#include <libwebsockets.h> + + +namespace ivi +{ + namespace settings + { + class configurator; + class manager; + + /** + * @class websocket_server + * + * @brief IVI Settings web socket server + * + * This class implements the server that listens for and handles + * web socket events. + */ + class websocket_server + { + public: + + /// Constructor. + websocket_server(configurator const & config, + manager & manager); + + /// Destructor. + ~websocket_server(); + + /// Run the websocket server event loop in its own thread. + void run(); + + private: + + /** + * @name Prevent copying + */ + //@{ + websocket_server(websocket_server const &) = delete; + websocket_server & operator=(websocket_server const &) = delete; + //@} + + private: + + /// Our libwebsocket state. + libwebsocket_context * context_; + + }; + + } +} + + +#endif /* IVI_SETTINGS_WEBSOCKET_SERVER_HPP */ + + +// Local Variables: +// mode:c++ +// c-basic-offset:2 +// indent-tabs-mode: nil +// End: |