2 * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved.
4 * Contact: Suresh Kumar N (suresh.n@samsung.com)
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 #include "zigbee_service_interface_common.h"
21 static gboolean on_alarm_get_alarm_count(ZigbeeAlarm *alarm_object,
22 GDBusMethodInvocation *invocation,
27 ZigBeeService *service = (ZigBeeService *)user_data;
29 NOT_USED(alarm_object);
37 * Create and send request for processing
43 static gboolean on_alarm_reset_alarm(ZigbeeAlarm *alarm_object,
44 GDBusMethodInvocation *invocation,
51 ZigBeeService *service = (ZigBeeService *)user_data;
53 NOT_USED(alarm_object);
63 * Create and send request for processing
69 static gboolean on_alarm_reset_all_alarm(ZigbeeAlarm *alarm_object,
70 GDBusMethodInvocation *invocation,
75 ZigBeeService *service = (ZigBeeService *)user_data;
77 NOT_USED(alarm_object);
85 * Create and send request for processing
91 static gboolean on_alarm_alarm(ZigbeeAlarm *alarm_object,
92 GDBusMethodInvocation *invocation,
99 ZigBeeService *service = (ZigBeeService *)user_data;
101 NOT_USED(alarm_object);
102 NOT_USED(invocation);
107 NOT_USED(cluster_id);
111 * Create and send request for processing
117 static gboolean on_alarm_reset_alarm_log(ZigbeeAlarm *alarm_object,
118 GDBusMethodInvocation *invocation,
123 ZigBeeService *service = (ZigBeeService *)user_data;
125 NOT_USED(alarm_object);
126 NOT_USED(invocation);
133 * Create and send request for processing
139 static gboolean on_alarm_get_alarm(ZigbeeAlarm *alarm_object,
140 GDBusMethodInvocation *invocation,
145 ZigBeeService *service = (ZigBeeService *)user_data;
147 NOT_USED(alarm_object);
148 NOT_USED(invocation);
155 * Create and send request for processing
161 gboolean zigbee_service_dbus_interface_alarm_init(ZigBeeService *service,
162 ZigbeeObjectSkeleton *zigbee_object)
164 ZigbeeAlarm *alarm_object;
166 if (NULL == service) {
167 Z_LOGE("service is NULL");
171 alarm_object = zigbee_alarm_skeleton_new();
172 zigbee_object_skeleton_set_alarm(zigbee_object, alarm_object);
173 g_object_unref(alarm_object);
175 Z_LOGI("alarm_object: [%p]", alarm_object);
178 * Register signal handlers for 'alarm' interface
180 g_signal_connect(alarm_object,
181 "handle-get-alarm-count",
182 G_CALLBACK(on_alarm_get_alarm_count), service);
184 g_signal_connect(alarm_object,
185 "handle-reset-alarm",
186 G_CALLBACK(on_alarm_reset_alarm), service);
188 g_signal_connect(alarm_object,
189 "handle-reset-all-alarm",
190 G_CALLBACK(on_alarm_reset_all_alarm), service);
192 g_signal_connect(alarm_object,
194 G_CALLBACK(on_alarm_alarm), service);
196 g_signal_connect(alarm_object,
197 "handle-reset-alarm-log",
198 G_CALLBACK(on_alarm_reset_alarm_log), service);
200 g_signal_connect(alarm_object,
202 G_CALLBACK(on_alarm_get_alarm), service);