4 * @brief Clock settings plugin.
6 * Connman-based clock settings plugin.
8 * @author Ossama Othman @<ossama.othman@@intel.com@>
11 * Copyright 2012, 2013 Intel Corporation All Rights Reserved.
13 * This library is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU Lesser General Public
15 * License as published by the Free Software Foundation;
16 * version 2.1 of the License.
18 * This library is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 * Lesser General Public License for more details.
23 * You should have received a copy of the GNU Lesser General Public
24 * License along with this library; if not, write to the Free Software
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor,
26 * Boston, MA 02110-1301 USA
28 * @note This header is internal. Settings provider plugin implementors
29 * should write their own library/symbol export macros as
34 #ifndef IVI_SETTINGS_CONNMAN_CLOCK_HPP
35 #define IVI_SETTINGS_CONNMAN_CLOCK_HPP
37 #include "connman.hpp"
38 #include <settingsd/plugin.hpp>
40 #include <json-glib/json-glib.h>
47 class response_callback;
52 * @brief Connman-based clock settings.
54 * This class implements all connman-based clock settings.
56 class clock : public plugin
61 clock(GDBusConnection * connection, event_callback const & e);
67 * @name Settings Plugin API
69 * Interface defined by the @c ivi::settings::plugin abstract
72 * @see settingsd/plugin.hpp
75 virtual std::string const & id() const;
76 virtual void handle_request(std::string request,
77 response_callback response);
83 bool set_time(JsonReader * reader,
84 response_callback response,
88 bool set_timezone(JsonReader * reader,
89 response_callback response,
92 /// Set time or timezone updates to manual or auto.
93 bool set_updates(char const * name,
95 response_callback response,
99 * Check if the TimeUpdates or TimezoneUpdate property is set
102 void is_updates_auto(char const * name,
104 response_callback response,
107 /// Set the clock property.
108 bool set_property(char const * name,
110 response_callback response,
113 /// Get the clock property.
114 GVariant * get_property(char const * name,
115 GError *& error) const;
119 /// Underlying connman proxy.
128 #endif /* IVI_SETTINGS_CONNMAN_CLOCK_HPP */
134 // indent-tabs-mode: nil