From 7f5847cbdb67e5c28d3bec5540e9e16be782ab9c Mon Sep 17 00:00:00 2001 From: Fancy code <258828110.@qq.com> Date: Sat, 23 Mar 2024 09:42:29 +0800 Subject: [PATCH] Improve:AppManager module. --- .../src/Protocol/SixFrame/SixFrameHandle.cpp | 93 ++++++------------- .../src/Protocol/SixFrame/SixFrameHandle.h | 1 + 2 files changed, 29 insertions(+), 65 deletions(-) diff --git a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp index b49a51d..54f7fe6 100644 --- a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp +++ b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.cpp @@ -106,23 +106,18 @@ void SixFrameHandle::RequestHandle2(const std::string command, const std::string } void SixFrameHandle::DoNothing(const std::string &url, ResponseHandle responseHandle, void *context) { - // responseHandle("Unknown command.", context); - char *resultStr = nullptr; cJSON *result = MakeResponseResult(ResposeResult::FAILED); if (nullptr == result) { LogError("MakeResponseResult failed.\n"); responseHandle("Device run out of memory.", context); return; } - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void SixFrameHandle::RequestGetProductInfo(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetProductInfo.\n"); - char *resultStr = nullptr; AppGetProductInfo param; mAppMonitor->GetProductInfo(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -132,9 +127,7 @@ void SixFrameHandle::RequestGetProductInfo(const std::string &url, ResponseHandl return; } ResponseGetProductInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetProductInfo(cJSON *result, const AppGetProductInfo ¶m) @@ -149,7 +142,6 @@ void inline SixFrameHandle::ResponseGetProductInfo(cJSON *result, const AppGetPr void SixFrameHandle::RequestGetDeviceAttr(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetDeviceAttr.\n"); - char *resultStr = nullptr; AppGetDeviceAttr param; mAppMonitor->GetDeviceAttr(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -159,9 +151,7 @@ void SixFrameHandle::RequestGetDeviceAttr(const std::string &url, ResponseHandle return; } ResponseGetDeviceAttr(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetDeviceAttr(cJSON *result, const AppGetDeviceAttr ¶m) @@ -181,7 +171,6 @@ void inline SixFrameHandle::ResponseGetDeviceAttr(cJSON *result, const AppGetDev void SixFrameHandle::RequestGetMediaInfo(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetMediaInfo.\n"); - char *resultStr = nullptr; AppGetMeidaInfo param; mAppMonitor->GetMediaInfo(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -191,10 +180,7 @@ void SixFrameHandle::RequestGetMediaInfo(const std::string &url, ResponseHandle return; } ResponseGetMediaInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - LogInfo("resultStr = \n%s\n", resultStr); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetMediaInfo(cJSON *result, const AppGetMeidaInfo ¶m) @@ -208,7 +194,6 @@ void inline SixFrameHandle::ResponseGetMediaInfo(cJSON *result, const AppGetMeid void SixFrameHandle::RequestGetSdCardInfo(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetDeviceAttr.\n"); - char *resultStr = nullptr; AppGetSdCardInfo param; mAppMonitor->GetSdCardInfo(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -218,9 +203,7 @@ void SixFrameHandle::RequestGetSdCardInfo(const std::string &url, ResponseHandle return; } ResponseGetSdCardInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetSdCardInfo(cJSON *result, const AppGetSdCardInfo ¶m) @@ -234,7 +217,6 @@ void inline SixFrameHandle::ResponseGetSdCardInfo(cJSON *result, const AppGetSdC void SixFrameHandle::RequestGetBatteryInfo(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetDeviceAttr.\n"); - char *resultStr = nullptr; AppGetBatteryInfo param; mAppMonitor->GetBatteryInfo(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -244,9 +226,7 @@ void SixFrameHandle::RequestGetBatteryInfo(const std::string &url, ResponseHandl return; } ResponseGetBatteryInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetBatteryInfo(cJSON *result, const AppGetBatteryInfo ¶m) @@ -259,7 +239,6 @@ void inline SixFrameHandle::ResponseGetBatteryInfo(cJSON *result, const AppGetBa void SixFrameHandle::RequestGetParamValue(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetParamValue.\n"); - char *resultStr = nullptr; AppGetParamValue param; mAppMonitor->GetParamValue(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -269,9 +248,7 @@ void SixFrameHandle::RequestGetParamValue(const std::string &url, ResponseHandle return; } ResponseGetParamValue(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetParamValue(cJSON *result, const AppGetParamValue ¶m) @@ -284,7 +261,6 @@ void inline SixFrameHandle::ResponseGetParamValue(cJSON *result, const AppGetPar void SixFrameHandle::RequestGetCapability(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetCapability.\n"); - char *resultStr = nullptr; AppGetCapability param; mAppMonitor->GetCapability(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -294,9 +270,7 @@ void SixFrameHandle::RequestGetCapability(const std::string &url, ResponseHandle return; } ResponseGetCapability(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetCapability(cJSON *result, const AppGetCapability ¶m) @@ -309,7 +283,6 @@ void inline SixFrameHandle::ResponseGetCapability(cJSON *result, const AppGetCap void SixFrameHandle::RequestGetLockVideoStatus(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetLockVideoStatus.\n"); - char *resultStr = nullptr; LockVideoStatus param; mAppMonitor->GetLockVideoStatus(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -319,9 +292,7 @@ void SixFrameHandle::RequestGetLockVideoStatus(const std::string &url, ResponseH return; } ResponseGetLockVideoStatus(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetLockVideoStatus(cJSON *result, const LockVideoStatus ¶m) @@ -333,7 +304,6 @@ void inline SixFrameHandle::ResponseGetLockVideoStatus(cJSON *result, const Lock void SixFrameHandle::RequestGetStorageInfo(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetStorageInfo.\n"); - char *resultStr = nullptr; std::vector param; mAppMonitor->GetStorageInfo(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); @@ -343,9 +313,7 @@ void SixFrameHandle::RequestGetStorageInfo(const std::string &url, ResponseHandl return; } ResponseGetStorageInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void inline SixFrameHandle::ResponseGetStorageInfo(cJSON *result, const std::vector ¶m) @@ -401,7 +369,6 @@ AppSetDateTime inline SixFrameHandle::RequestSetDateTimeParse(const std::string void SixFrameHandle::RequestSetDateTime(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestGetDeviceAttr.\n"); - char *resultStr = nullptr; AppSetDateTime param = RequestSetDateTimeParse(url); mAppMonitor->SetDateTime(param); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL, SET_REQUEST_RESPONSE); @@ -410,10 +377,7 @@ void SixFrameHandle::RequestSetDateTime(const std::string &url, ResponseHandle r responseHandle("Device run out of memory.", context); return; } - // ResponseGetBatteryInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } int inline SixFrameHandle::RequestSetTimeZoneParse(const std::string &url) @@ -437,7 +401,6 @@ int inline SixFrameHandle::RequestSetTimeZoneParse(const std::string &url) void SixFrameHandle::RequestSetTimeZone(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestSetTimeZone.\n"); - char *resultStr = nullptr; int zone = RequestSetTimeZoneParse(url); mAppMonitor->SetTimeZone(zone); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL, SET_REQUEST_RESPONSE); @@ -446,10 +409,7 @@ void SixFrameHandle::RequestSetTimeZone(const std::string &url, ResponseHandle r responseHandle("Device run out of memory.", context); return; } - // ResponseGetBatteryInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } AppSetParamValue inline SixFrameHandle::RequestSetParamValueParse(const std::string &url) @@ -480,7 +440,6 @@ AppSetParamValue inline SixFrameHandle::RequestSetParamValueParse(const std::str void SixFrameHandle::RequestSetParamValue(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestSetParamValue.\n"); - char *resultStr = nullptr; AppSetParamValue value = RequestSetParamValueParse(url); mAppMonitor->SetParamValue(value); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL, SET_REQUEST_RESPONSE); @@ -489,16 +448,12 @@ void SixFrameHandle::RequestSetParamValue(const std::string &url, ResponseHandle responseHandle("Device run out of memory.", context); return; } - // ResponseGetBatteryInfo(result, param); - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void SixFrameHandle::RequestEnterRecorder(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestEnterRecorder.\n"); - char *resultStr = nullptr; mAppMonitor->EnterRecorder(); cJSON *result = MakeResponseResult(ResposeResult::SUCCESSFUL); if (nullptr == result) { @@ -506,15 +461,12 @@ void SixFrameHandle::RequestEnterRecorder(const std::string &url, ResponseHandle responseHandle("Device run out of memory.", context); return; } - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } void SixFrameHandle::RequestUpload(const std::string &url, ResponseHandle responseHandle, void *context) { LogInfo("RequestUpload.\n"); - char *resultStr = nullptr; AppUploadFile info("path", UploadCommand::UPGRADE_CPU); mAppMonitor->UploadFile(info); cJSON *result = MakeResponseResult(info.mResult); @@ -523,9 +475,7 @@ void SixFrameHandle::RequestUpload(const std::string &url, ResponseHandle respon responseHandle("Device run out of memory.", context); return; } - resultStr = cJSON_Print(result); - responseHandle(resultStr, context); - free(resultStr); + ResponseJsonString(result, responseHandle, context); cJSON_Delete(result); } cJSON *SixFrameHandle::MakeResponseResult(const ResposeResult result, const bool requestSet) @@ -549,6 +499,19 @@ cJSON *SixFrameHandle::MakeResponseResult(const ResposeResult result, const bool END: return resultCJSON; } +void SixFrameHandle::ResponseJsonString(cJSON *json, ResponseHandle responseHandle, void *context) +{ + char *resultStr = nullptr; + resultStr = cJSON_Print(json); + if (nullptr != resultStr) { + responseHandle(resultStr, context); + free(resultStr); + } + else { + LogError("MakeResponseResult failed.\n"); + responseHandle("Device run out of memory.", context); + } +} void SixFrameHandle::SetAppMonitor(std::shared_ptr &monitor) { if (monitor) { diff --git a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.h b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.h index 6c49473..6d5bc9c 100644 --- a/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.h +++ b/middleware/AppManager/src/Protocol/SixFrame/SixFrameHandle.h @@ -87,6 +87,7 @@ private: private: cJSON *MakeResponseResult(const ResposeResult result, const bool requestSet = false); + void ResponseJsonString(cJSON *json, ResponseHandle responseHandle, void *context); protected: void SetAppMonitor(std::shared_ptr &monitor) override;