当前位置: 首页>>代码示例>>C++>>正文


C++ FileManager::getNumberChunk方法代码示例

本文整理汇总了C++中FileManager::getNumberChunk方法的典型用法代码示例。如果您正苦于以下问题:C++ FileManager::getNumberChunk方法的具体用法?C++ FileManager::getNumberChunk怎么用?C++ FileManager::getNumberChunk使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在FileManager的用法示例。


在下文中一共展示了FileManager::getNumberChunk方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: deployment_route

void deployment_route(mg_connection* conn, const mg_request_info* request_info)
{
	char qid[16];
	int id;
	
	get_qsvar(request_info, "id", qid, sizeof(qid));
	
	mg_printf(conn, "%s", ajax_reply_start);	
	
	if (strcmp(qid, "undefined") == 0) 
	{
		mg_printf(conn, "{\"state\":\"error\"}");	
	} 
	else
	{
		istringstream iss(qid);
		iss >> id;
	
		PolypeerServer* server = PolypeerServer::getInstance();
		ServerData& data = server->getServerData();
		File* file = data.getFile(id);
		
		if (file == NULL)
		{
			mg_printf(conn, "{\"state\":\"error\"}");	
		}
		else
		{
			FileManager* fm = file->getFileManager();
			std::vector<std::vector<Entity*>* >* pp = file->getSortedHosts();
			
			// gestion affichage de la date de déploiement
			struct tm * timeinfo;
			time_t rawtime = (time_t)(file->getDate());
			char buffer[80];
			timeinfo = localtime(&rawtime);
			
			strftime (buffer,80,"%c",timeinfo);
			
			mg_printf(conn, "{\"id\":\"%i\", \"name\":\"%s\", \"date\":\"%s\", \"filename\":\"%s\", \"state\":\"%s\", \
				\"nbchunk\":%lu, \"chunksize\":%lu, \"size\":%lu, \"hosts\":["
				, id, file->getName().c_str(), buffer
				, fm->getFileName().c_str()
				, getStringFileState(file->getFileState()).c_str()
				, fm->getNumberChunk()
				, fm->getChunkSize(), fm->getFileSize()
			);
	
			for (vector<vector<Entity*>* >::const_iterator itZone = pp->begin(); itZone != pp->end(); ++itZone) 
			{
				for (vector<Entity*>::const_iterator it = (*itZone)->begin(); it != (*itZone)->end(); ++it)
				{
					mg_printf(conn, "{\"name\":\"%s\", \"ip\":\"%s\", \"host_state\":\"%s\", \"state\":\"%s\", \"current\":\"%i\", \"total\":\"%lu\"}"
						, (*it)->getName().c_str(), (*it)->getIP().c_str()
						, getStringHostState((*it)->getHostState()).c_str()
						, getStringHostDeployState((*it)->getDeploymentState(fm->getIdFile())->getCurrentState()).c_str()
						, (*it)->getDeploymentState(fm->getIdFile())->getCurrentIdChunk()
						, fm->getNumberChunk()
					);
			
					if ((it + 1) != (*itZone)->end()) 
					{
						mg_printf(conn, ",");
					}
				}
		
				if ((itZone + 1) != pp->end()) 
				{
					mg_printf(conn, ",");
				}
			}
	
			File::deleteSortedHost(pp); // Nécessaire, des allocations dynamiques sont faite lors du listing précédent
	
			mg_printf(conn, "]}");
		}
	}
}
开发者ID:Lulububu,项目名称:PolyPeer,代码行数:78,代码来源:routes.cpp


注:本文中的FileManager::getNumberChunk方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。