CWizXmlRpcEventLoop::CWizXmlRpcEventLoop(QNetworkReply* pReply, QObject *parent /*= 0*/) : QEventLoop(parent) , m_error(QNetworkReply::NoError) { connect(pReply, SIGNAL(finished()), SLOT(on_replyFinished())); connect(pReply, SIGNAL(error(QNetworkReply::NetworkError)), SLOT(on_replyError(QNetworkReply::NetworkError))); }
CWizAutoTimeOutEventLoop::CWizAutoTimeOutEventLoop(QNetworkReply* pReply, QObject *parent /*= 0*/) : QEventLoop(parent) , m_error(QNetworkReply::NoError) // , m_timeOut(false) // , m_timeOutWaitSeconds(TIMEOUT_WAIT_SECONDS * 1000) { connect(pReply, SIGNAL(finished()), SLOT(on_replyFinished())); connect(pReply, SIGNAL(error(QNetworkReply::NetworkError)), SLOT(on_replyError(QNetworkReply::NetworkError))); }
bool CWizXmlRpcServer::xmlRpcCall(const QString& strMethodName, CWizXmlRpcValue* pParam) { m_strMethodName = strMethodName; CWizXmlRpcRequest data(strMethodName); data.addParam(pParam); m_requestData = data.toData(); QNetworkRequest request; request.setUrl(QUrl(m_strUrl)); request.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("text/xml")); QNetworkReply* reply = m_network->post(request, m_requestData); connect(reply, SIGNAL(finished()), SLOT(on_replyFinished())); connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), SLOT(on_replyError(QNetworkReply::NetworkError))); connect(reply, SIGNAL(downloadProgress(qint64, qint64)), SLOT(on_replyDownloadProgress(qint64, qint64))); return true; }