]> pilppa.org Git - libplpdevicebus.git/blob - src_server/ServerListenerImpl.cc
a63a7aff09db26b137cbf326d7e901d728af20a7
[libplpdevicebus.git] / src_server / ServerListenerImpl.cc
1 /*
2  * ServerListenerImpl.cc
3  *
4  *  Created on: Mar 3, 2011
5  *      Author: lamikr
6  */
7 #include <string.h>
8
9 #include <plp/log.h>
10 #include <plp/retval.h>
11 #include "ServerListenerImpl.hh"
12 #include "../src/plp/devicebus/DeviceBusMessageId.hh"
13
14 using namespace plpdevicebus;
15
16 ServerListenerImpl::ServerListenerImpl(DeviceManagerServer *dev_man_param) {
17         _dev_man        = dev_man_param;
18 }
19
20 int ServerListenerImpl::request_received(const char *msg_req_param, const char **msg_rsp_param) {
21         log_debug("request_received(char *%s)\n", msg_req_param);
22         *msg_rsp_param = strdup("jee");
23         return 0;
24 }
25
26 int ServerListenerImpl::request_received(const BusMessage *msg_req_param, const BusMessage *msg_rsp_param) {
27         int     err_flg;
28         long    type_id;
29         int     ret_val;
30
31         ret_val         = -1;
32         type_id         = ((BusMessage *)msg_req_param)->get_type(&err_flg);
33         if (err_flg == PLP_OK) {
34                 log_debug("request_received, type_id: %ld\n", type_id);
35                 switch(type_id) {
36                         case MSG_TYPE_ID__GET_DEVICE_LIST:
37                                 log_debug("get device list request handling started\n");
38                                 _dev_man->get_device_list(msg_rsp_param);
39                                 ret_val         = 0;
40                                 break;
41                         case MSG_TYPE_ID__GET_LATEST_DATA:
42                                 log_debug("get latest data request handling started\n");
43                                 _dev_man->get_latest_data((BusMessage *)msg_req_param, msg_rsp_param);
44                                 ret_val         = 0;
45                                 break;
46                         default:
47                                 log_debug("unknown message type-id received: %ld\n", type_id);
48                                 break;
49                 }
50         }
51         return ret_val;
52 }