bool SitemonApp::performSingleRequest(HTTPRequest &request, bool outputHeader, bool outputBody) { HTTPEngine engine; HTTPResponse response; if (engine.performRequest(request, response)) { if (outputHeader) { std::cout << response.header << "\n---\n"; } if (outputBody) { std::cout << response.content << "\n"; } outputResponse(request, response); } else { std::cout << response.errorString << "\n"; return false; } return true; }
void HTTPServerRequestDespatcher::inlineSimple(HTTPServerRequest &request, std::string &response) { if (request.hasParams()) { std::string url = request.getParam("url"); std::string acceptCompressed = request.getParam("accept_compressed"); std::string content; HTTPEngine engine; HTTPRequest httpTestRequest(url); if (acceptCompressed == "1") { httpTestRequest.setAcceptCompressed(true); } HTTPResponse httpTestResponse; if (engine.performRequest(httpTestRequest, httpTestResponse)) { formatResponseToHTMLDL(httpTestResponse, content); } else { content += "Couldn't perform test: " + httpTestResponse.errorString + "<br>\n"; } addResponseToSingleTestHistoryTable(m_pMonitoringDB, httpTestResponse); HTTPServerResponse resp(200, content); response = resp.responseString(); } }
void SchedulerTestThread::run() { HTTPEngine engine; if (m_single) { HTTPResponse response; engine.performRequest(m_request, response); if (m_pSaver) { m_pSaver->addResult(response, m_testID); } } else { ScriptResult result; for (std::vector<HTTPRequest>::iterator it = m_script.begin(); it != m_script.end(); ++it) { HTTPRequest &request = *it; HTTPResponse response; if (engine.performRequest(request, response)) { result.addResponse(response); } else { result.addResponse(response); break; // break out and end, as there's been an issue } if (request.getPauseTime() > 0) { sleep(request.getPauseTime()); } } if (m_pSaver) { m_pSaver->addResult(result, m_testID); } } }
bool SitemonApp::performScriptRequest(Script &script) { HTTPEngine engine; for (std::vector<HTTPRequest>::iterator it = script.begin(); it != script.end(); ++it) { HTTPRequest &request = *it; HTTPResponse response; std::cout << "Testing... " << request.getDescription() << "\n"; if (engine.performRequest(request, response)) { outputResponse(request, response); } else { std::cout << "Error code: " << response.errorCode << "\t:\t" << response.errorString << "\n"; break; } } return true; }