const char* ClientHandler::send() { if (_requestReady) { _client->println("Connection: close"); _client->println(); buildResponse(); if (_activeLogs) { Serial.println("disconnecting."); Serial.println(""); Serial.println("status"); Serial.println(_status); Serial.println(""); Serial.print("headers"); Serial.print(_responseHeaders); Serial.println(""); Serial.print("body"); Serial.println(_body); } _client->stop(); return _body.c_str(); } else { return "Request is not ready to be sent"; } }
Status doSaslStep(const ClientBasic* client, SaslAuthenticationSession* session, const BSONObj& cmdObj, BSONObjBuilder* result) { std::string payload; BSONType type = EOO; Status status = saslExtractPayload(cmdObj, &payload, &type); if (!status.isOK()) return status; std::string responsePayload; // Passing in a payload and extracting a responsePayload status = session->step(payload, &responsePayload); if (!status.isOK()) { log() << session->getMechanism() << " authentication failed for " << session->getPrincipalId() << " on " << session->getAuthenticationDatabase() << " from client " << client->getRemote().toString() << " ; " << status.toString() << std::endl; sleepmillis(saslGlobalParams.authFailedDelay); // All the client needs to know is that authentication has failed. return Status(ErrorCodes::AuthenticationFailed, "Authentication failed."); } status = buildResponse(session, responsePayload, type, result); if (!status.isOK()) return status; if (session->isDone()) { UserName userName(session->getPrincipalId(), session->getAuthenticationDatabase()); status = session->getAuthorizationSession()->addAndAuthorizeUser(session->getOpCtxt(), userName); if (!status.isOK()) { return status; } if (!serverGlobalParams.quiet) { log() << "Successfully authenticated as principal " << session->getPrincipalId() << " on " << session->getAuthenticationDatabase(); } } return Status::OK(); }
c2s::C2SHttpResponse * ResumeSkillsGet::process() { c2s::io::DateTimeLogger log("skills"); mongo::DBClientConnection mongo; mongo::BSONObj skills; try { mongo.connect("localhost"); skills = mongo.findOne("test.resume.skills", mongo::Query()); } catch(mongo::ConnectException ex) { log.error(std::string("Connection Exception: ") + ex.what()); skills = BSON("DB Connection Failed." << ex.toString() << "isError" << true); } catch(mongo::DBException ex) { log.error(std::string("Database Exception: ") + ex.what()); log.error(mongo.getLastError()); skills = BSON("DB Query Failed." << ex.toString() << "isError" << true); } std::string skillsJson = skills.jsonString(); if (jsonpCallback.size()) { jsonpCallback += "(" + skillsJson + ");"; skillsJson = jsonpCallback; } c2s::C2SHttpResponse * pResponse = buildResponse(c2s::OK, skillsJson); pResponse->header().Fields.set("Access-Control-Allow-Origin", "*"); pResponse->header().Fields.set("Content-Type", "application/json; charset=utf-8"); return pResponse; }
virtual soap_out_t* buildSpecificResponse(const ns1__TStatusCode srmStatusCode, const char* const srmStatusExplanation){ m_status = srmStatusCode; m_explanation = srmStatusExplanation; return buildResponse(); }
void DefaultRestController::testObject(TestMany testMany) { buildResponse(HTTPResponseStatus::Ok, "TestMany", &testMany); cout << "Processed input request inside DefaultRestController for testObject..." << endl; }