1 #include "GetAttributeCommand.h"
7 GetAttributeCommand::GetAttributeCommand(
8 const ::aurum::ReqGetAttribute* request, ::aurum::RspGetAttribute* response)
9 : mRequest{request}, mResponse{response}, mObjMap{ObjectMapper::getInstance()}
13 ::grpc::Status GetAttributeCommand::execute()
15 return grpc::Status::CANCELLED;
18 std::unique_ptr<GetAttributeCommand> GetAttributeCommand::createCommand(const ::aurum::ReqGetAttribute* request,
19 ::aurum::RspGetAttribute* response)
21 ::aurum::ReqGetAttribute_RequestType type = request->attribute();
23 LOG_SCOPE_F(INFO, "type : %d", type);
25 if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_VISIBLE)
26 return std::make_unique<GetVisibleAttributeCommand>(request, response);
27 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_FOCUSABLE)
28 return std::make_unique<GetFocusableAttributeCommand>(request, response);
29 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_FOCUSED)
30 return std::make_unique<GetFocusedAttributeCommand>(request, response);
31 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_ENABLED)
32 return std::make_unique<GetEnabledAttributeCommand>(request, response);
33 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_CLICKABLE)
34 return std::make_unique<GetClickableAttributeCommand>(request, response);
35 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_SCROLLABLE)
36 return std::make_unique<GetScrollableAttributeCommand>(request, response);
37 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_CHECKABLE)
38 return std::make_unique<GetCheckableAttributeCommand>(request, response);
39 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_CHECKED)
40 return std::make_unique<GetCheckedAttributeCommand>(request, response);
41 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_SELECTED)
42 return std::make_unique<GetSelectedAttributeCommand>(request, response);
43 else if (type == ::aurum::ReqGetAttribute_RequestType::ReqGetAttribute_RequestType_SELECTABLE)
44 return std::make_unique<GetSelectableAttributeCommand>(request, response);
46 return std::make_unique<GetAttributeCommand>(request, response);
49 ::grpc::Status GetVisibleAttributeCommand::execute()
51 UiObject* obj = mObjMap->getElement(mRequest->elementid());
53 mResponse->set_boolvalue(false);
54 mResponse->set_status(aurum::RspStatus::ERROR);
55 return grpc::Status::OK;
57 mResponse->set_boolvalue(obj->isVisible());
58 mResponse->set_status(aurum::RspStatus::OK);
59 return grpc::Status::OK;
62 ::grpc::Status GetFocusedAttributeCommand::execute()
64 UiObject* obj = mObjMap->getElement(mRequest->elementid());
66 mResponse->set_boolvalue(false);
67 mResponse->set_status(aurum::RspStatus::ERROR);
68 return grpc::Status::OK;
70 mResponse->set_boolvalue(obj->isFocused());
71 mResponse->set_status(aurum::RspStatus::OK);
72 return grpc::Status::OK;
75 ::grpc::Status GetFocusableAttributeCommand::execute()
77 UiObject* obj = mObjMap->getElement(mRequest->elementid());
79 mResponse->set_boolvalue(false);
80 mResponse->set_status(aurum::RspStatus::ERROR);
81 return grpc::Status::OK;
83 mResponse->set_boolvalue(obj->isFocusable());
84 mResponse->set_status(aurum::RspStatus::OK);
85 return grpc::Status::OK;
88 ::grpc::Status GetCheckableAttributeCommand::execute()
90 UiObject* obj = mObjMap->getElement(mRequest->elementid());
92 mResponse->set_boolvalue(false);
93 mResponse->set_status(aurum::RspStatus::ERROR);
94 return grpc::Status::OK;
96 mResponse->set_boolvalue(obj->isCheckable());
97 mResponse->set_status(aurum::RspStatus::OK);
98 return grpc::Status::OK;
101 ::grpc::Status GetCheckedAttributeCommand::execute()
103 UiObject* obj = mObjMap->getElement(mRequest->elementid());
105 mResponse->set_boolvalue(false);
106 mResponse->set_status(aurum::RspStatus::ERROR);
107 return grpc::Status::OK;
109 mResponse->set_boolvalue(obj->isChecked());
110 mResponse->set_status(aurum::RspStatus::OK);
111 return grpc::Status::OK;
114 ::grpc::Status GetEnabledAttributeCommand::execute()
116 UiObject* obj = mObjMap->getElement(mRequest->elementid());
118 mResponse->set_boolvalue(false);
119 mResponse->set_status(aurum::RspStatus::ERROR);
120 return grpc::Status::OK;
122 mResponse->set_boolvalue(obj->isEnabled());
123 mResponse->set_status(aurum::RspStatus::OK);
124 return grpc::Status::OK;
127 ::grpc::Status GetClickableAttributeCommand::execute()
129 UiObject* obj = mObjMap->getElement(mRequest->elementid());
131 mResponse->set_boolvalue(false);
132 mResponse->set_status(aurum::RspStatus::ERROR);
133 return grpc::Status::OK;
135 mResponse->set_boolvalue(obj->isClickable());
136 mResponse->set_status(aurum::RspStatus::OK);
137 return grpc::Status::OK;
140 ::grpc::Status GetScrollableAttributeCommand::execute()
142 UiObject* obj = mObjMap->getElement(mRequest->elementid());
144 mResponse->set_boolvalue(false);
145 mResponse->set_status(aurum::RspStatus::ERROR);
146 return grpc::Status::OK;
148 mResponse->set_boolvalue(obj->isScrollable());
149 mResponse->set_status(aurum::RspStatus::OK);
150 return grpc::Status::OK;
153 ::grpc::Status GetSelectableAttributeCommand::execute()
155 UiObject* obj = mObjMap->getElement(mRequest->elementid());
157 mResponse->set_boolvalue(false);
158 mResponse->set_status(aurum::RspStatus::ERROR);
159 return grpc::Status::OK;
161 mResponse->set_boolvalue(obj->isSelectable());
162 mResponse->set_status(aurum::RspStatus::OK);
163 return grpc::Status::OK;
166 ::grpc::Status GetSelectedAttributeCommand::execute()
168 UiObject* obj = mObjMap->getElement(mRequest->elementid());
170 mResponse->set_boolvalue(false);
171 mResponse->set_status(aurum::RspStatus::ERROR);
172 return grpc::Status::OK;
174 mResponse->set_boolvalue(obj->isSelected());
175 mResponse->set_status(aurum::RspStatus::OK);
176 return grpc::Status::OK;