diff --git a/arangod/Agency/RestAgencyHandler.cpp b/arangod/Agency/RestAgencyHandler.cpp index 8697913722..ebdba69c66 100644 --- a/arangod/Agency/RestAgencyHandler.cpp +++ b/arangod/Agency/RestAgencyHandler.cpp @@ -76,7 +76,7 @@ void RestAgencyHandler::redirectRequest(std::string const& leaderId) { std::string url = Endpoint::uriForm(_agent->config().poolAt(leaderId)) + _request->requestPath(); - setResponseCode(rest::ResponseCode::TEMPORARY_REDIRECT); + resetResponse(rest::ResponseCode::TEMPORARY_REDIRECT); _response->setHeaderNC(StaticStrings::Location, url); } catch (std::exception const& e) { LOG_TOPIC(WARN, Logger::AGENCY) << e.what() << " " << __FILE__ << __LINE__; diff --git a/arangod/Aql/RestAqlHandler.cpp b/arangod/Aql/RestAqlHandler.cpp index 6757f21cda..e8bde55313 100644 --- a/arangod/Aql/RestAqlHandler.cpp +++ b/arangod/Aql/RestAqlHandler.cpp @@ -916,6 +916,6 @@ std::shared_ptr RestAqlHandler::parseVelocyPackBody() { void RestAqlHandler::sendResponse( rest::ResponseCode code, VPackSlice const slice, arangodb::TransactionContext* transactionContext) { - setResponseCode(code); + resetResponse(code); writeResult(slice, *(transactionContext->getVPackOptionsForDump())); } diff --git a/arangod/Cluster/RestAgencyCallbacksHandler.cpp b/arangod/Cluster/RestAgencyCallbacksHandler.cpp index 5dc4562c85..ceac176659 100644 --- a/arangod/Cluster/RestAgencyCallbacksHandler.cpp +++ b/arangod/Cluster/RestAgencyCallbacksHandler.cpp @@ -74,10 +74,10 @@ RestHandler::status RestAgencyCallbacksHandler::execute() { auto callback = _agencyCallbackRegistry->getCallback(index); LOG(DEBUG) << "Agency callback has been triggered. refetching!"; callback->refetchAndUpdate(true); - setResponseCode(arangodb::rest::ResponseCode::ACCEPTED); + resetResponse(arangodb::rest::ResponseCode::ACCEPTED); } catch (arangodb::basics::Exception const&) { // mop: not found...expected - setResponseCode(arangodb::rest::ResponseCode::NOT_FOUND); + resetResponse(arangodb::rest::ResponseCode::NOT_FOUND); } return status::DONE; } diff --git a/arangod/Cluster/RestShardHandler.cpp b/arangod/Cluster/RestShardHandler.cpp index 1729722d55..db22545078 100644 --- a/arangod/Cluster/RestShardHandler.cpp +++ b/arangod/Cluster/RestShardHandler.cpp @@ -55,7 +55,7 @@ RestHandler::status RestShardHandler::execute() { ClusterComm::instance()->processAnswer(coordinatorHeader, stealRequest()); if (result == "") { - setResponseCode(arangodb::rest::ResponseCode::ACCEPTED); + resetResponse(arangodb::rest::ResponseCode::ACCEPTED); } else { generateError(arangodb::rest::ResponseCode::BAD, (int)arangodb::rest::ResponseCode::BAD, diff --git a/arangod/GeneralServer/PathHandler.cpp b/arangod/GeneralServer/PathHandler.cpp index 677efaf024..49f3545d7f 100644 --- a/arangod/GeneralServer/PathHandler.cpp +++ b/arangod/GeneralServer/PathHandler.cpp @@ -85,7 +85,7 @@ RestHandler::status PathHandler::execute() { } url += defaultFile; - setResponseCode(rest::ResponseCode::MOVED_PERMANENTLY); + resetResponse(rest::ResponseCode::MOVED_PERMANENTLY); response->setHeaderNC(StaticStrings::Location, url); response->setContentType(rest::ContentType::HTML); @@ -108,7 +108,7 @@ RestHandler::status PathHandler::execute() { if (next == ".") { LOG(WARN) << "file '" << name << "' contains '.'"; - setResponseCode(rest::ResponseCode::FORBIDDEN); + resetResponse(rest::ResponseCode::FORBIDDEN); response->body().appendText("path contains '.'"); return status::DONE; } @@ -116,7 +116,7 @@ RestHandler::status PathHandler::execute() { if (next == "..") { LOG(WARN) << "file '" << name << "' contains '..'"; - setResponseCode(rest::ResponseCode::FORBIDDEN); + resetResponse(rest::ResponseCode::FORBIDDEN); response->body().appendText("path contains '..'"); return status::DONE; } @@ -126,7 +126,7 @@ RestHandler::status PathHandler::execute() { if (sc != std::string::npos) { LOG(WARN) << "file '" << name << "' contains illegal character"; - setResponseCode(rest::ResponseCode::FORBIDDEN); + resetResponse(rest::ResponseCode::FORBIDDEN); response->body().appendText("path contains illegal character '" + std::string(1, next[sc]) + "'"); return status::DONE; @@ -136,7 +136,7 @@ RestHandler::status PathHandler::execute() { if (!FileUtils::isDirectory(path)) { LOG(WARN) << "file '" << name << "' not found"; - setResponseCode(rest::ResponseCode::NOT_FOUND); + resetResponse(rest::ResponseCode::NOT_FOUND); response->body().appendText("file not found"); return status::DONE; } @@ -148,7 +148,7 @@ RestHandler::status PathHandler::execute() { if (!allowSymbolicLink && FileUtils::isSymbolicLink(name)) { LOG(WARN) << "file '" << name << "' contains symbolic link"; - setResponseCode(rest::ResponseCode::FORBIDDEN); + resetResponse(rest::ResponseCode::FORBIDDEN); response->body().appendText("symbolic links are not allowed"); return status::DONE; } @@ -157,19 +157,19 @@ RestHandler::status PathHandler::execute() { if (!FileUtils::isRegularFile(name)) { LOG(WARN) << "file '" << name << "' not found"; - setResponseCode(rest::ResponseCode::NOT_FOUND); + resetResponse(rest::ResponseCode::NOT_FOUND); response->body().appendText("file not found"); return status::DONE; } - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); try { FileUtils::slurp(name, response->body()); } catch (...) { LOG(WARN) << "file '" << name << "' not readable"; - setResponseCode(rest::ResponseCode::NOT_FOUND); + resetResponse(rest::ResponseCode::NOT_FOUND); response->body().appendText("file not readable"); return status::DONE; } @@ -208,7 +208,7 @@ RestHandler::status PathHandler::execute() { } void PathHandler::handleError(Exception const&) { - setResponseCode(rest::ResponseCode::SERVER_ERROR); + resetResponse(rest::ResponseCode::SERVER_ERROR); } } } diff --git a/arangod/GeneralServer/RestHandler.cpp b/arangod/GeneralServer/RestHandler.cpp index 0dcb628d94..f18b0c3b5d 100644 --- a/arangod/GeneralServer/RestHandler.cpp +++ b/arangod/GeneralServer/RestHandler.cpp @@ -117,7 +117,7 @@ RestHandler::status RestHandler::executeFull() { return result; } -void RestHandler::setResponseCode(rest::ResponseCode code) { +void RestHandler::resetResponse(rest::ResponseCode code) { TRI_ASSERT(_response != nullptr); _response->reset(code); } diff --git a/arangod/GeneralServer/RestHandler.h b/arangod/GeneralServer/RestHandler.h index 8c23f926bd..65b8dbf560 100644 --- a/arangod/GeneralServer/RestHandler.h +++ b/arangod/GeneralServer/RestHandler.h @@ -110,8 +110,8 @@ class RestHandler : public RequestStatisticsAgent, public arangodb::WorkItem { } protected: - // sets response Code - void setResponseCode(rest::ResponseCode); + // resets the request + void resetResponse(rest::ResponseCode); protected: // handler id diff --git a/arangod/GeneralServer/RestHandlerFactory.cpp b/arangod/GeneralServer/RestHandlerFactory.cpp index 380d079ea6..7cc133558e 100644 --- a/arangod/GeneralServer/RestHandlerFactory.cpp +++ b/arangod/GeneralServer/RestHandlerFactory.cpp @@ -46,13 +46,13 @@ class MaintenanceHandler : public RestHandler { bool isDirect() const override { return true; }; status execute() override { - setResponseCode(rest::ResponseCode::SERVICE_UNAVAILABLE); + resetResponse(rest::ResponseCode::SERVICE_UNAVAILABLE); return status::DONE; }; void handleError(const Exception& error) override { - setResponseCode(rest::ResponseCode::SERVICE_UNAVAILABLE); + resetResponse(rest::ResponseCode::SERVICE_UNAVAILABLE); }; }; } diff --git a/arangod/RestHandler/RestBaseHandler.cpp b/arangod/RestHandler/RestBaseHandler.cpp index 15462f602d..f0e608a231 100644 --- a/arangod/RestHandler/RestBaseHandler.cpp +++ b/arangod/RestHandler/RestBaseHandler.cpp @@ -53,7 +53,7 @@ void RestBaseHandler::handleError(Exception const& ex) { void RestBaseHandler::generateResult(rest::ResponseCode code, VPackSlice const& slice) { - setResponseCode(code); + resetResponse(code); VPackOptions options(VPackOptions::Defaults); options.escapeUnicode = true; writeResult(slice, options); @@ -62,7 +62,7 @@ void RestBaseHandler::generateResult(rest::ResponseCode code, void RestBaseHandler::generateResult(rest::ResponseCode code, VPackSlice const& slice, VPackOptions const* options) { - setResponseCode(code); + resetResponse(code); VPackOptions tmpoptions(*options); tmpoptions.escapeUnicode = true; writeResult(slice, tmpoptions); @@ -74,7 +74,7 @@ void RestBaseHandler::generateResult(rest::ResponseCode code, void RestBaseHandler::generateResult( rest::ResponseCode code, VPackSlice const& slice, std::shared_ptr context) { - setResponseCode(code); + resetResponse(code); writeResult(slice, *(context->getVPackOptionsForDump())); } @@ -98,7 +98,7 @@ void RestBaseHandler::generateError(rest::ResponseCode code, int errorCode) { void RestBaseHandler::generateError(rest::ResponseCode code, int errorCode, std::string const& message) { - setResponseCode(code); + resetResponse(code); VPackBuilder builder; try { diff --git a/arangod/RestHandler/RestBatchHandler.cpp b/arangod/RestHandler/RestBatchHandler.cpp index df0a3da1d8..b86bd4d1bd 100644 --- a/arangod/RestHandler/RestBatchHandler.cpp +++ b/arangod/RestHandler/RestBatchHandler.cpp @@ -92,7 +92,7 @@ RestHandler::status RestBatchHandler::execute() { _request->header(StaticStrings::Authorization); // create the response - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); _response->setContentType(_request->header(StaticStrings::ContentTypeHeader)); // http required here diff --git a/arangod/RestHandler/RestCursorHandler.cpp b/arangod/RestHandler/RestCursorHandler.cpp index 21ddf90c95..ac1f5392b8 100644 --- a/arangod/RestHandler/RestCursorHandler.cpp +++ b/arangod/RestHandler/RestCursorHandler.cpp @@ -136,7 +136,7 @@ void RestCursorHandler::processQuery(VPackSlice const& slice) { TRI_ASSERT(qResult.isArray()); { - setResponseCode(rest::ResponseCode::CREATED); + resetResponse(rest::ResponseCode::CREATED); _response->setContentType(rest::ContentType::JSON); std::shared_ptr extra = buildExtra(queryResult); VPackSlice opts = options->slice(); diff --git a/arangod/RestHandler/RestExportHandler.cpp b/arangod/RestHandler/RestExportHandler.cpp index 386c70c2f6..31e243db75 100644 --- a/arangod/RestHandler/RestExportHandler.cpp +++ b/arangod/RestHandler/RestExportHandler.cpp @@ -269,7 +269,7 @@ void RestExportHandler::createCursor() { collectionExport.get(), batchSize, ttl, count); collectionExport.release(); - setResponseCode(rest::ResponseCode::CREATED); + resetResponse(rest::ResponseCode::CREATED); try { VPackBuffer buffer; @@ -328,7 +328,7 @@ void RestExportHandler::modifyCursor() { } try { - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); VPackBuffer buffer; VPackBuilder builder(buffer); diff --git a/arangod/RestHandler/RestImportHandler.cpp b/arangod/RestHandler/RestImportHandler.cpp index a22737340a..e25e34be71 100644 --- a/arangod/RestHandler/RestImportHandler.cpp +++ b/arangod/RestHandler/RestImportHandler.cpp @@ -866,7 +866,7 @@ int RestImportHandler::performImport(SingleCollectionTransaction& trx, void RestImportHandler::generateDocumentsCreated( RestImportResult const& result) { - setResponseCode(rest::ResponseCode::CREATED); + resetResponse(rest::ResponseCode::CREATED); try { VPackBuilder json; diff --git a/arangod/RestHandler/RestJobHandler.cpp b/arangod/RestHandler/RestJobHandler.cpp index a3f9d32dfe..cc3638be51 100644 --- a/arangod/RestHandler/RestJobHandler.cpp +++ b/arangod/RestHandler/RestJobHandler.cpp @@ -94,7 +94,7 @@ void RestJobHandler::putJob() { if (status == AsyncJobResult::JOB_PENDING) { // job is still pending - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); return; } @@ -194,11 +194,11 @@ void RestJobHandler::getJobById(std::string const& value) { if (status == AsyncJobResult::JOB_PENDING) { // job is still pending - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); return; } - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); } //////////////////////////////////////////////////////////////////////////////// diff --git a/arangod/RestHandler/RestPleaseUpgradeHandler.cpp b/arangod/RestHandler/RestPleaseUpgradeHandler.cpp index a52bbfe304..467d19fb53 100644 --- a/arangod/RestHandler/RestPleaseUpgradeHandler.cpp +++ b/arangod/RestHandler/RestPleaseUpgradeHandler.cpp @@ -43,7 +43,7 @@ RestHandler::status RestPleaseUpgradeHandler::execute() { THROW_ARANGO_EXCEPTION(TRI_ERROR_INTERNAL); } - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); response->setContentType(rest::ContentType::TEXT); auto& buffer = response->body(); diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index 2c7e3b98b4..7d4e151c95 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -607,7 +607,7 @@ void RestReplicationHandler::handleCommandBatch() { int res = engine->extendCompactionBlocker(_vocbase, id, expires); if (res == TRI_ERROR_NO_ERROR) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { generateError(GeneralResponse::responseCode(res), res); } @@ -623,7 +623,7 @@ void RestReplicationHandler::handleCommandBatch() { int res = engine->removeCompactionBlocker(_vocbase, id); if (res == TRI_ERROR_NO_ERROR) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { generateError(GeneralResponse::responseCode(res), res); } @@ -724,7 +724,7 @@ void RestReplicationHandler::handleCommandBarrier() { if (arangodb::wal::LogfileManager::instance()->extendLogfileBarrier( id, ttl, minTick)) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { int res = TRI_ERROR_ARANGO_DOCUMENT_NOT_FOUND; generateError(GeneralResponse::responseCode(res), res); @@ -737,7 +737,7 @@ void RestReplicationHandler::handleCommandBarrier() { TRI_voc_tick_t id = StringUtils::uint64(suffix[1]); if (arangodb::wal::LogfileManager::instance()->removeLogfileBarrier(id)) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { int res = TRI_ERROR_ARANGO_DOCUMENT_NOT_FOUND; generateError(GeneralResponse::responseCode(res), res); @@ -845,7 +845,7 @@ void RestReplicationHandler::handleTrampolineCoordinator() { } bool dummy; - setResponseCode(static_cast( + resetResponse(static_cast( res->result->getHttpReturnCode())); HttpResponse* httpResponse = dynamic_cast(_response.get()); @@ -997,9 +997,9 @@ void RestReplicationHandler::handleCommandLoggerFollow() { size_t const length = TRI_LengthStringBuffer(dump._buffer); if (length == 0) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); } HttpResponse* httpResponse = dynamic_cast(_response.get()); @@ -1099,9 +1099,9 @@ void RestReplicationHandler::handleCommandDetermineOpenTransactions() { size_t const length = TRI_LengthStringBuffer(dump._buffer); if (length == 0) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); } HttpResponse* httpResponse = dynamic_cast(_response.get()); @@ -3207,9 +3207,9 @@ void RestReplicationHandler::handleCommandDump() { size_t const length = TRI_LengthStringBuffer(dump._buffer); if (length == 0) { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } else { - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); } // TODO needs to generalized diff --git a/arangod/RestHandler/RestSimpleHandler.cpp b/arangod/RestHandler/RestSimpleHandler.cpp index f79d347de4..f914393111 100644 --- a/arangod/RestHandler/RestSimpleHandler.cpp +++ b/arangod/RestHandler/RestSimpleHandler.cpp @@ -358,7 +358,7 @@ void RestSimpleHandler::lookupByKeys(VPackSlice const& slice) { VPackBuilder result; { VPackObjectBuilder guard(&result); - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); // TODO this should be generalized response->setContentType(rest::ContentType::JSON); diff --git a/arangod/RestHandler/RestUploadHandler.cpp b/arangod/RestHandler/RestUploadHandler.cpp index cf87669fe5..4c0d26fa93 100644 --- a/arangod/RestHandler/RestUploadHandler.cpp +++ b/arangod/RestHandler/RestUploadHandler.cpp @@ -112,7 +112,7 @@ RestHandler::status RestUploadHandler::execute() { TRI_Free(TRI_CORE_MEM_ZONE, relative); // create the response - setResponseCode(rest::ResponseCode::CREATED); + resetResponse(rest::ResponseCode::CREATED); VPackBuilder b; diff --git a/arangod/RestHandler/RestVocbaseBaseHandler.cpp b/arangod/RestHandler/RestVocbaseBaseHandler.cpp index ca89f5e04b..ac77987541 100644 --- a/arangod/RestHandler/RestVocbaseBaseHandler.cpp +++ b/arangod/RestHandler/RestVocbaseBaseHandler.cpp @@ -169,9 +169,9 @@ void RestVocbaseBaseHandler::generateSaved( arangodb::OperationResult const& result, std::string const& collectionName, TRI_col_type_e type, VPackOptions const* options, bool isMultiple) { if (result.wasSynchronous) { - setResponseCode(rest::ResponseCode::CREATED); + resetResponse(rest::ResponseCode::CREATED); } else { - setResponseCode(rest::ResponseCode::ACCEPTED); + resetResponse(rest::ResponseCode::ACCEPTED); } if (isMultiple && !result.countErrorCodes.empty()) { @@ -196,9 +196,9 @@ void RestVocbaseBaseHandler::generateDeleted( arangodb::OperationResult const& result, std::string const& collectionName, TRI_col_type_e type, VPackOptions const* options) { if (result.wasSynchronous) { - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); } else { - setResponseCode(rest::ResponseCode::ACCEPTED); + resetResponse(rest::ResponseCode::ACCEPTED); } generate20x(result, collectionName, type, options); } @@ -257,7 +257,7 @@ void RestVocbaseBaseHandler::generateForbidden() { void RestVocbaseBaseHandler::generatePreconditionFailed( VPackSlice const& slice) { - setResponseCode(rest::ResponseCode::PRECONDITION_FAILED); + resetResponse(rest::ResponseCode::PRECONDITION_FAILED); if (slice.isObject()) { // single document case std::string const rev = @@ -310,7 +310,7 @@ void RestVocbaseBaseHandler::generatePreconditionFailed( //////////////////////////////////////////////////////////////////////////////// void RestVocbaseBaseHandler::generateNotModified(TRI_voc_rid_t rid) { - setResponseCode(rest::ResponseCode::NOT_MODIFIED); + resetResponse(rest::ResponseCode::NOT_MODIFIED); _response->setHeaderNC(StaticStrings::Etag, "\"" + TRI_RidToString(rid) + "\""); } @@ -331,7 +331,7 @@ void RestVocbaseBaseHandler::generateDocument(VPackSlice const& input, } // and generate a response - setResponseCode(rest::ResponseCode::OK); + resetResponse(rest::ResponseCode::OK); // set ETAG header if (!rev.empty()) { diff --git a/arangod/RestHandler/RestVocbaseBaseHandler.h b/arangod/RestHandler/RestVocbaseBaseHandler.h index 5e16f7d59a..8ea355416a 100644 --- a/arangod/RestHandler/RestVocbaseBaseHandler.h +++ b/arangod/RestHandler/RestVocbaseBaseHandler.h @@ -154,14 +154,14 @@ class RestVocbaseBaseHandler : public RestBaseHandler { ////////////////////////////////////////////////////////////////////////////// void generateOk() { - setResponseCode(rest::ResponseCode::NO_CONTENT); + resetResponse(rest::ResponseCode::NO_CONTENT); } ////////////////////////////////////////////////////////////////////////////// /// @brief generates ok message with no body but with certain status code ////////////////////////////////////////////////////////////////////////////// - void generateOk(rest::ResponseCode code) { setResponseCode(code); } + void generateOk(rest::ResponseCode code) { resetResponse(code); } ////////////////////////////////////////////////////////////////////////////// /// @brief generates message for a saved document