MCPcopy Create free account
hub / github.com/altairwei/WizNotePlus / downloadObjectData

Method downloadObjectData

src/sync/WizSync.cpp:1091–1187  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1089}
1090
1091bool WizKMSync::downloadObjectData()
1092{
1093 CWizObjectDataArray arrayObject;
1094 if (!m_pDatabase->getObjectsNeedToBeDownloaded(arrayObject))
1095 {
1096 m_pEvents->onError("Cannot get objects need to be downloaded form server!");
1097 return FALSE;
1098 }
1099
1100 if (arrayObject.empty())
1101 return TRUE;
1102
1103 std::sort(arrayObject.begin(), arrayObject.end(), WizCompareObjectByTypeAndTime);
1104
1105 int start = 0;
1106 int size = 0;
1107 ::GetSyncProgressRange(::syncDownloadObjectData, start, size);
1108 m_pEvents->onSyncProgress(start);
1109
1110 int total = int(arrayObject.size());
1111
1112 size_t succeeded = 0;
1113
1114 size_t nCount = arrayObject.size();
1115 for (size_t i = 0; i < nCount; i++)
1116 {
1117 if (m_pEvents->isStop())
1118 return FALSE;
1119
1120 WIZOBJECTDATA data = arrayObject[i];
1121
1122 QString strMsgFormat = data.eObjectType == wizobjectDocument ? _TR("Downloading note: %1"): _TR("Downloading attachment: %1");
1123 QString strStatus = WizFormatString1(strMsgFormat, data.strDisplayName);
1124 m_pEvents->onStatus(strStatus);
1125
1126 QByteArray stream;
1127 if (data.eObjectType == wizobjectDocument)
1128 {
1129 WIZDOCUMENTDATAEX ret;
1130 ret.strGUID = data.strObjectGUID;
1131 ret.strKbGUID = data.strKbGUID;
1132 ret.strTitle = data.strDisplayName;
1133 QString fileName = m_pDatabase->getDocumentFileName(ret.strGUID);
1134 m_server.clearJsonResult();
1135 if (!m_server.document_downloadData(data.strObjectGUID, ret, fileName))
1136 {
1137 if (m_server.lastJsonResult().externCode == "WizErrorNotExistsInDb")
1138 {
1139 m_pDatabase->deleteDocumentFromLocal(ret.strGUID);
1140 }
1141 else
1142 {
1143 m_pEvents->onError(WizFormatString1("Cannot download note data from server: %1", data.strDisplayName));
1144 }
1145 return false;
1146 }
1147 stream = ret.arrayData;
1148 }

Callers 2

WizSync.cppFile · 0.80
WizSyncDatabaseOnlyFunction · 0.80

Calls 15

GetSyncProgressRangeFunction · 0.85
WizFormatString1Function · 0.85
onErrorMethod · 0.80
beginMethod · 0.80
endMethod · 0.80
sizeMethod · 0.80
isStopMethod · 0.80
onStatusMethod · 0.80
getDocumentFileNameMethod · 0.80
clearJsonResultMethod · 0.80
document_downloadDataMethod · 0.80

Tested by

no test coverage detected