INT32 CJksjcx::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; XmlParse(m_pXmlParse); CheckYWXmlPara(retInfo.m_retMsg); g_globalArgLib->m_invKind->m_fplxdm = m_ywxml_gy.m_fplxdm; retcode = CJSKManageProc::JKSJCX_Proc(g_globalArgLib->m_invKind, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } DBG_PRINT(("m_maxSign = %lld", g_globalArgLib->m_invKind->m_maxSign)); DBG_PRINT(("m_Lxkjsj = %u", g_globalArgLib->m_invKind->m_Lxkjsj)); DBG_PRINT(("m_Lxssr = %u", g_globalArgLib->m_invKind->m_Lxssr)); DBG_PRINT(("m_maxSum = %lld", g_globalArgLib->m_invKind->m_maxSum)); DBG_PRINT(("m_bsqsrq = %s", g_globalArgLib->m_invKind->m_bsqsrq.c_str())); DBG_PRINT(("m_bszzrq = %s", g_globalArgLib->m_invKind->m_bszzrq.c_str())); XmlBuild(m_pXmlConstruct, g_globalArgLib->m_invKind, &retInfo); return SUCCESS; }
INT32 CTjxxcx::Execute() { Return_Info retInfo; // 返回信息类对象 CTjxxhz tjxxhz[TJXXCX_MONTHMAX]; //统计信息汇总类 INT32 retcode = 0; INT8 tmpbuf[64]; INT32 MonthCount = TJXXCX_MONTHMAX;//支持的最大查询月数 XmlParse(m_pXmlParse, tjxxhz); //调用XML解析函数 CheckYWXmlPara(retInfo.m_retMsg); DBG_PRINT(("YWXML_TJXXCX: fplxdm = %s", m_ywxml_gy.m_fplxdm.c_str())); retcode = CJSKInvManageProc::TJXXCX_Proc(m_ywxml_gy.m_fplxdm, MonthCount, tjxxhz, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; MonthCount = 0; } XmlBuild(m_pXmlConstruct, &retInfo, tjxxhz, MonthCount); //调用XML组装函数 return SUCCESS; }
INT32 CBspfpcx::Execute() { CInvVol invVol[MAX_INV_VOL_NUM]; //发票领用信息表 string lgry(""); //领购人员 Return_Info retInfo;//返回信息 INT32 retcode = 0; INT8 tmpbuf[64]; UINT32 invNum = BSPFPCX_INVNUM; XmlParse(m_pXmlParse); //调用XML解析函数 CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKInvManageProc::BSPFPCX_Proc(m_ywxml_gy.m_fplxdm, invNum, invVol, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; invNum = 0; } XmlBuild(m_pXmlConstruct, invNum, invVol, lgry, &retInfo); //调用XML组装函数 return SUCCESS; }
INT32 CFpzf::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; CInvHead invHead; UINT8 zflx = 0; XmlParse(m_pXmlParse, &invHead, zflx); CheckYWXmlPara(retInfo.m_retMsg); invHead.m_jqbh = m_ywxml_gy.m_jqbh; invHead.m_xfsh = m_ywxml_gy.m_nsrsbh; invHead.m_sksbbh = m_ywxml_gy.m_sksbbh; retcode = CJSKMakeInvoice::FPZF_Proc(&invHead, zflx, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &invHead, &retInfo); return SUCCESS; }
void Xmller:: createwithxmlfile(std::string xmlfile){ copyFileToPath(xmlfile); //拷贝xml文件到沙盒 XmlParse(xmlfile); //解析xml文件 }
Long CBLScriptParser:: Parse( PVoid pScript, SizeT ScriptSize, SBLScriptBase *pScriptInfo, SizeT BufferSize ) { Long Result; SXmlInfo XmlInfo; SXmlNode *pNode; if (pScript == NULL || pScriptInfo == NULL) return BL_ERROR_INVALID_PARAMETER; pScriptInfo->ScriptType = BL_SCRIPT_TYPE_UNKNOWN; if (!XmlParse(pScript, &XmlInfo)) return BL_ERROR_INVALID_FORMAT; pNode = XmlInfo.pNode; if (pNode == NULL) return BL_ERROR_INVALID_FORMAT; if (!StrCompare(pNode->pszNodeName, BL_SCRIPT_CONFIG_ROOT_TAG)) { Result = ParseScriptConfig(&XmlInfo, (SBLScriptConfig *)pScriptInfo, BufferSize); } else if (!StrCompare(pNode->pszNodeName, BL_SCRIPT_LIST_ROOT_TAG)) { Result = ParseScriptGameList(&XmlInfo, (SBLScriptGameList *)pScriptInfo, BufferSize); } else if (!StrCompare(pNode->pszNodeName, BL_SCRIPT_PLUGIN_ROOT_TAG)) { Result = ParseScriptPlugin(&XmlInfo, (SBLScriptPlugin *)pScriptInfo, BufferSize); } else { Result = BL_ERROR_INVALID_FORMAT; } XmlDestroy(&XmlInfo); if (BL_FAILED(Result)) FreeScriptInfo(pScriptInfo); return Result; }
INT32 CYWXmlBase::ParseProc() { DBG_PRINT(("ParseProc Begin")); m_pXmlParse.XMLParseBegin(KJ_XML_RESPONSE_FILE); m_ywlx = m_pXmlParse.m_RootElement->Attribute(XML_BUSINESS_ID); DBG_PRINT(("m_ywlx = %s", m_ywlx.c_str())); INT32 retcode = 0; retcode = XmlParse(); if(retcode != XML_SUCCESS) { return retcode; } m_pXmlParse.XMLParseEnd(); return XML_SUCCESS; }
INT32 CGpxxxp::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; string gpxxmw; XmlParse(m_pXmlParse, gpxxmw); CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKInvManageProc::GPXXXP_Proc(m_ywxml_gy.m_fplxdm, gpxxmw, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &retInfo); return SUCCESS; }
INT32 CFpdr::Execute() { UINT8 jzlx=0; //介质类型 Return_Info retInfo;//返回信息 INT32 retcode = 0; INT8 tmpbuf[64]; XmlParse(m_pXmlParse, jzlx); //调用XML解析函数 CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKInvManageProc::FPDR_Proc(jzlx, m_ywxml_gy.m_fplxdm, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &retInfo); //调用XML组装函数 return SUCCESS; }
INT32 CGpxxcx::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; CInvVol invVol; XmlParse(m_pXmlParse); CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKMakeInvoice::GPXXCX_Proc(&invVol, retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &invVol, &retInfo); return SUCCESS; }
INT32 CFpkj::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; CInvHead invHead; XmlParse(m_pXmlParse, &invHead); CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKMakeInvoice::FPKJ_Proc(&invHead, retInfo.m_retMsg); DBG_PRINT(("retcode = %d", retcode)); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &invHead, &retInfo); return SUCCESS; }
INT32 CSkpBsp::Execute() { Return_Info retInfo; INT32 retcode = 0; INT8 tmpbuf[64]; UINT8 czlx = 0; string strHzxx(""); string strQtxx(""); XmlParse(m_pXmlParse, czlx, strHzxx, strQtxx); CheckYWXmlPara(retInfo.m_retMsg); retcode = CJSKDeclareProc::SKPBSP_Proc(m_ywxml_gy.m_fplxdm, czlx, strQtxx,retInfo.m_retMsg); if(retcode != JSK_SUCCESS) { memset(tmpbuf, 0, sizeof(tmpbuf)); sprintf(tmpbuf, "%d", retcode); retInfo.m_retCode = tmpbuf; } XmlBuild(m_pXmlConstruct, &retInfo); return SUCCESS; }
int CMp4DownloadClient::HeaderRequest(const char* url, CString& mainfilename, ProgressCallBack hotvr_processcb, ProgressCallBack cdn_processcb, ProgressCallBack header_processcb, void* customparam) { if (url == NULL || m_sequence_ptr == NULL || m_info_ptr == NULL || m_cdnInfolist_ptr == NULL) return -1; m_customparam = customparam; bool bresult = false; if(!hotvrs_string_ptr) hotvrs_string_ptr = new string[1]; printf("hotvrs request...\n"); NPT_LOG_FATAL("hotvrs request...\n"); CMultiRequest hotvrs_client(Response_Whole_DataType); //使用手动重置为无信号状态,初始化时无信号状态 bresult = hotvrs_client.AddRequest(url, 0, HotVrsResponseCallBackFunc, hotvr_processcb, NULL, this); if (!bresult) return -1; CURLcode resultcode = hotvrs_client.Perform(); if (resultcode > CURLE_OK) return -1; bresult = JsonParse(hotvrs_string_ptr[0].c_str(), hotvrs_string_ptr[0].size(), *m_info_ptr); if (!bresult) return -1; switch (m_info_ptr->version) { case VER_ORIGINAL: mainfilename = m_info_ptr->name + L"[原画版]"; break; case VER_SUPER: mainfilename = m_info_ptr->name + L"[超清版]"; break; case VER_HIGH: mainfilename = m_info_ptr->name + L"[高清版]"; break; case VER_NORMAL: mainfilename = m_info_ptr->name + L"[普清版]"; break; default: mainfilename = m_info_ptr->name; break; } mainfilename += ".mp4"; size_t section_count = m_info_ptr->sections.size(); printf("%d section cdn request...\n", section_count); NPT_LOG_FATAL_1("%d section cdn request...\n", section_count); if (!cdn_string_ptr) cdn_string_ptr = new string[section_count]; CMultiRequest cdn_client(Response_Whole_DataType); /* Allocate one CURL handle per transfer */ for (size_t i=0; i < section_count; i++) { //请求调度 wostringstream stream; stream<<L"http://"<<(LPCTSTR)m_info_ptr->allot<<L"/p2p?file="<<(LPCTSTR)m_info_ptr->sections[i].url<<L"&new="<<(LPCTSTR)m_info_ptr->sections[i].newAddress; stream<<L"&num="<<1<<L"&idc="<<m_info_ptr->tn<<L"&key="<<(LPCTSTR)m_info_ptr->sections[i].key; wstring wstream = stream.str(); { //wprintf(L"[CDN %d]%s\n", i, wstream.c_str()); } USES_CONVERSION; bresult = cdn_client.AddRequest(W2A(wstream.c_str()), 0, CdnResponseCallBackFunc, cdn_processcb, NULL, this); if (!bresult) return -1; } resultcode = cdn_client.Perform(); if (resultcode > CURLE_OK) return -1; printf("%d section header request...\n", section_count); NPT_LOG_FATAL_1("%d section header request...\n", section_count); if (!header_string_ptr) header_string_ptr = new string[section_count]; CMultiRequest header_client(Response_Whole_DataType); for (size_t idx = 0; idx < section_count; idx++) { SHCDNInfo cdninfo; memset(&cdninfo, 0, sizeof(SHCDNInfo)); XmlParse(cdn_string_ptr[idx].c_str(), cdn_string_ptr[idx].size(), cdninfo); m_cdnInfolist_ptr->push_back(cdninfo); wostringstream cdnstream; cdnstream<<L"http://"<<(LPCTSTR)cdninfo.ip.c_str()<<(LPCTSTR)cdninfo.url.c_str()<<"?key="<<(LPCTSTR)cdninfo.key.c_str()<<"plat=ifox"<< "&ch="<<(LPCTSTR)m_info_ptr->ch<<"&catcode="<<(LPCTSTR)m_info_ptr->catcode<<"&start="<<0<<"&startpos="<<0<<"&headeronly"; wstring wstream = cdnstream.str(); { //wprintf(L"[Header %d]%s\n", idx, wstream.c_str()); } USES_CONVERSION; bresult = header_client.AddRequest(W2A(wstream.c_str()), 0, HeaderResponseCallBackFunc, header_processcb, NULL, this); if (!bresult) return -1; } resultcode = header_client.Perform(); if (resultcode > CURLE_OK) return -1; SequenceInfo sequenceinfo; sequenceinfo.nSectionCount = section_count; sequenceinfo.pSectioninfo = new SectionInfo[section_count]; for (unsigned int i = 0; i < section_count; i++) { sequenceinfo.pSectioninfo[i].pSectionInfoBuffer = (_pbyte_t)malloc(header_string_ptr[i].size()); memcpy(sequenceinfo.pSectioninfo[i].pSectionInfoBuffer, header_string_ptr[i].c_str(), header_string_ptr[i].size()); sequenceinfo.pSectioninfo[i].ui32SectionInfoBufferSize = header_string_ptr[i].size(); } m_sequence_ptr->Fill(&sequenceinfo); for (unsigned int i = 0; i < section_count; i++) { if (sequenceinfo.pSectioninfo[i].pSectionInfoBuffer) { free(sequenceinfo.pSectioninfo[i].pSectionInfoBuffer); sequenceinfo.pSectioninfo[i].pSectionInfoBuffer = NULL; } sequenceinfo.pSectioninfo[i].ui32SectionInfoBufferSize = 0; } if (sequenceinfo.pSectioninfo) { delete [] sequenceinfo.pSectioninfo; sequenceinfo.pSectioninfo = NULL; } sequenceinfo.nSectionCount = 0; if (hotvrs_string_ptr) { delete [] hotvrs_string_ptr; hotvrs_string_ptr = NULL; } if (cdn_string_ptr) { delete [] cdn_string_ptr; cdn_string_ptr = NULL; } if (header_string_ptr) { delete [] header_string_ptr; header_string_ptr = NULL; } return 0; }