@@ -13,6 +13,7 @@ bool XEngine_Task_Manage(LPCXSTR lpszAPIName, LPCXSTR lpszClientAddr, LPCXSTR lp
1313 LPCXSTR lpszAPIDir = _X (" Dir" );
1414 LPCXSTR lpszAPIBucket = _X (" Bucket" );
1515 LPCXSTR lpszAPITask = _X (" Task" );
16+ LPCXSTR lpszAPIFlushSize = _X (" flushsize" );
1617 RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam;
1718
1819 memset (tszSDBuffer, ' \0 ' , sizeof (tszSDBuffer));
@@ -374,6 +375,40 @@ bool XEngine_Task_Manage(LPCXSTR lpszAPIName, LPCXSTR lpszClientAddr, LPCXSTR lp
374375 XEngine_Net_SendMsg (lpszClientAddr, tszSDBuffer, nSDLen, STORAGE_NETTYPE_HTTPCENTER);
375376 XLOG_PRINT (xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X (" 业务客户端:%s,请求获取BUCKET信息成功" ), lpszClientAddr);
376377 }
378+ else if (0 == _tcsxnicmp (lpszAPIFlushSize, lpszAPIName, _tcsxlen (lpszAPIFlushSize)))
379+ {
380+ XCHAR tszBuckKey[XPATH_MAX] = {};
381+ Protocol_StorageParse_DirOperator (lpszMsgBuffer, NULL , tszBuckKey, NULL );
382+ if (_tcsxlen (tszBuckKey) > 0 )
383+ {
384+ XENGINE_STORAGEBUCKET st_StorageBucket = {};
385+ for (auto stl_ListIterator = st_LoadbalanceCfg.st_LoadBalance .pStl_ListBucket ->begin (); stl_ListIterator != st_LoadbalanceCfg.st_LoadBalance .pStl_ListBucket ->end (); stl_ListIterator++)
386+ {
387+ if (0 == _tcsxnicmp (stl_ListIterator->tszBuckKey , tszBuckKey, _tcsxlen (stl_ListIterator->tszBuckKey )))
388+ {
389+ APIHelp_Api_GetDIRSize (stl_ListIterator->tszFilePath , &stl_ListIterator->nBuckSize );
390+ st_StorageBucket = *stl_ListIterator;
391+ }
392+ }
393+ list<XENGINE_STORAGEBUCKET> stl_ListBucket;
394+ stl_ListBucket.push_back (st_StorageBucket);
395+ Protocol_StoragePacket_Bucket (tszRVBuffer, &nRVLen, &stl_ListBucket);
396+ }
397+ else
398+ {
399+ for (auto stl_ListIterator = st_LoadbalanceCfg.st_LoadBalance .pStl_ListBucket ->begin (); stl_ListIterator != st_LoadbalanceCfg.st_LoadBalance .pStl_ListBucket ->end (); stl_ListIterator++)
400+ {
401+ if (0 == _tcsxnicmp (stl_ListIterator->tszBuckKey , tszBuckKey, _tcsxlen (stl_ListIterator->tszBuckKey )))
402+ {
403+ APIHelp_Api_GetDIRSize (stl_ListIterator->tszFilePath , &stl_ListIterator->nBuckSize );
404+ }
405+ }
406+ Protocol_StoragePacket_Bucket (tszRVBuffer, &nRVLen, st_LoadbalanceCfg.st_LoadBalance .pStl_ListBucket );
407+ }
408+ HttpProtocol_Server_SendMsgEx (xhCenterHttp, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen);
409+ XEngine_Net_SendMsg (lpszClientAddr, tszSDBuffer, nSDLen, STORAGE_NETTYPE_HTTPCENTER);
410+ XLOG_PRINT (xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X (" 业务客户端:%s,请求刷新BUCKET大小成功" ), lpszClientAddr);
411+ }
377412 else if (0 == _tcsxnicmp (lpszAPITask, lpszAPIName, _tcsxlen (lpszAPITask)))
378413 {
379414 int nDLCount = 0 ;
0 commit comments