libaurum: apply smart pointer wider and extract impl out
[platform/core/uifw/aurum.git] / org.tizen.aurum-bootstrap / src / Commands / GetValueCommand.cc
1 #include "GetValueCommand.h"
2 #include <loguru.hpp>
3
4 #include <UiObject.h>
5
6 GetValueCommand::GetValueCommand(const ::aurum::ReqGetValue* request,
7                                  ::aurum::RspGetValue*       response)
8     : mRequest{request}, mResponse{response}
9 {
10 }
11
12 ::grpc::Status GetValueCommand::execute()
13 {
14     LOG_SCOPE_F(INFO, "GetValue --------------- ");
15     ObjectMapper* mObjMap = ObjectMapper::getInstance();
16     std::shared_ptr<UiObject> obj = mObjMap->getElement(mRequest->elementid());
17
18     if (obj) {
19         std::string text = obj->getText();
20         mResponse->set_stringvalue(text.c_str());
21         mResponse->set_status(::aurum::RspStatus::OK);
22     }
23
24     return grpc::Status::OK;
25 }