1 #include "ClearCommand.h"
6 ClearCommand::ClearCommand(const ::aurum::ReqClear* request,
7 ::aurum::RspClear* response)
8 : mRequest{request}, mResponse{response}
12 bool ClearCommand::hasHintText(std::shared_ptr<UiObject> obj)
14 if (!obj) return false;
16 auto old_text = obj->getText();
18 if (!old_text.compare(obj->getText())) {
21 obj->setText(old_text);
26 ::grpc::Status ClearCommand::execute()
28 LOG_SCOPE_F(INFO, "Clear --------------- ");
29 ObjectMapper* mObjMap = ObjectMapper::getInstance();
30 std::shared_ptr<UiObject> obj = mObjMap->getElement(mRequest->elementid());
35 auto text = obj->getText();
36 if (text.length() != 0) {
37 if (hasHintText(obj)) {
38 mResponse->set_status(::aurum::RspStatus::OK);
40 mResponse->set_status(::aurum::RspStatus::ERROR);
43 mResponse->set_status(::aurum::RspStatus::OK);
47 return grpc::Status::OK;