summaryrefslogtreecommitdiff
path: root/src/3rd_party-static/MessageBroker/src/example/MessageBrokerControllerBackend.cpp
blob: cbbe39492ba9bb59014161147ad2ad71074d442b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
/**
 * \file MessageBrokerControllerBackend.cpp
 * \brief MessageBroker Controller for Backend.
 * \author AKara
 */

#include "MessageBrokerControllerBackend.hpp"

#include "MBDebugHelper.h" 

namespace NsMessageBroker
{
  CMessageBrokerControllerBackend::CMessageBrokerControllerBackend(const std::string& address, unsigned short port):
CMessageBrokerController(address, port, std::string("Backend"))
  {
  }

  CMessageBrokerControllerBackend::~CMessageBrokerControllerBackend()
  {
  }

  void CMessageBrokerControllerBackend::processRequest(Json::Value& root)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::processRequest()\n"));
    if (getControllersName() == getDestinationComponentName(root))
    {
      Json::Value response;
      response["jsonrpc"] = root["jsonrpc"];
      response["id"] = root["id"];
      if ("isFirstStart" == getMethodName(root))
      {
        isFirstStart(response);
      } else if ("isFullScreen" == getMethodName(root))
      {
        isFullScreen(response);
      } else if ("getWindowSize" == getMethodName(root))
      {
        getWindowSize(response);
      } else if ("getWindowDensity" == getMethodName(root))
      {
        getWindowDensity(response);
      } else if ("getOSInfo" == getMethodName(root))
      {
        getOSInfo(response);
      } else if ("logToOS" == getMethodName(root))
      {
        logToOS(response);
      } else
      {
        DBG_MSG_ERROR(("Method has not been found!\n"));
        Json::Value err;
        err["code"] = NsMessageBroker::INVALID_REQUEST;
        err["message"] = "Method has not been found.";
        response["error"] = err;
      }
      sendJsonMessage(response);
    } else
    {
      DBG_MSG_ERROR(("Wrong message destination!\n"));
    }
  }

  void CMessageBrokerControllerBackend::processNotification(Json::Value& root)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::processNotification()\n"));
    root=root;//to prevent compiler warning
  }

  void CMessageBrokerControllerBackend::processResponse(std::string method, Json::Value& root)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::processResponse()\n"));
    root=root;//to prevent compiler warning
    method=method;//to prevent compiler warning
  }

  void CMessageBrokerControllerBackend::isFirstStart(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::isFirstStart()\n"));
    Json::Value res;
    res["isFirstStart"] = false;
    response["result"] = res;
  }

  void CMessageBrokerControllerBackend::isFullScreen(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::isFullScreen()\n"));
    Json::Value res;
    res["isFullScreen"] = false;
    response["result"] = res;
  }

  void CMessageBrokerControllerBackend::getWindowSize(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::getWindowSize()\n"));
    Json::Value res;
    res["width"] = 800;
    res["height"] = 480;
    response["result"] = res;
  }

  void CMessageBrokerControllerBackend::getWindowDensity(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::getWindowDensity()\n"));
    Json::Value res;
    res["windowDensity"] = 1;
    response["result"] = res;
  }

  void CMessageBrokerControllerBackend::getOSInfo(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::getOSInfo()\n"));
    Json::Value res;
    res["osType"] = "";
    res["osVersion"] = "";
    res["isNativeApplication"] = true;
    response["result"] = res;
  }

  void CMessageBrokerControllerBackend::logToOS(Json::Value& response)
  {
    DBG_MSG(("CMessageBrokerControllerBackend::logToOS()\n"));
    response["result"] = "";
  }

} /* namespace NsMessageBroker */