Updates to reflect addition of URL in http::Request. Review: https://reviews.apache.org/r/38598
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/c9d2017c Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/c9d2017c Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/c9d2017c Branch: refs/heads/master Commit: c9d2017c08334346534e035f0ff88802f3716e3e Parents: d347bf5 Author: Benjamin Mahler <[email protected]> Authored: Thu Sep 17 16:34:58 2015 -0700 Committer: Benjamin Mahler <[email protected]> Committed: Mon Sep 28 10:50:51 2015 -0700 ---------------------------------------------------------------------- src/files/files.cpp | 27 ++++++++++++++++----------- src/master/http.cpp | 22 +++++++++++----------- src/master/registrar.cpp | 2 +- src/slave/http.cpp | 4 ++-- src/slave/monitor.cpp | 2 +- src/tests/fetcher_cache_tests.cpp | 4 ++-- 6 files changed, 33 insertions(+), 28 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/files/files.cpp ---------------------------------------------------------------------- diff --git a/src/files/files.cpp b/src/files/files.cpp index 5afe332..08e76b9 100644 --- a/src/files/files.cpp +++ b/src/files/files.cpp @@ -214,7 +214,7 @@ const string FilesProcess::BROWSE_HELP = HELP( Future<Response> FilesProcess::browse(const Request& request) { - Option<string> path = request.query.get("path"); + Option<string> path = request.url.query.get("path"); if (!path.isSome() || path.get().empty()) { return BadRequest("Expecting 'path=value' in query.\n"); @@ -251,7 +251,7 @@ Future<Response> FilesProcess::browse(const Request& request) listing.values.push_back(file); } - return OK(listing, request.query.get("jsonp")); + return OK(listing, request.url.query.get("jsonp")); } @@ -287,7 +287,7 @@ const string FilesProcess::READ_HELP = HELP( Future<Response> FilesProcess::read(const Request& request) { - Option<string> path = request.query.get("path"); + Option<string> path = request.url.query.get("path"); if (!path.isSome() || path.get().empty()) { return BadRequest("Expecting 'path=value' in query.\n"); @@ -295,21 +295,26 @@ Future<Response> FilesProcess::read(const Request& request) off_t offset = -1; - if (request.query.get("offset").isSome()) { - Try<off_t> result = numify<off_t>(request.query.get("offset").get()); + if (request.url.query.get("offset").isSome()) { + Try<off_t> result = numify<off_t>(request.url.query.get("offset").get()); + if (result.isError()) { return BadRequest("Failed to parse offset: " + result.error() + ".\n"); } + offset = result.get(); } ssize_t length = -1; - if (request.query.get("length").isSome()) { - Try<ssize_t> result = numify<ssize_t>(request.query.get("length").get()); + if (request.url.query.get("length").isSome()) { + Try<ssize_t> result = numify<ssize_t>( + request.url.query.get("length").get()); + if (result.isError()) { return BadRequest("Failed to parse length: " + result.error() + ".\n"); } + length = result.get(); } @@ -364,7 +369,7 @@ Future<Response> FilesProcess::read(const Request& request) JSON::Object object; object.values["offset"] = size; object.values["data"] = ""; - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } // Seek to the offset we want to read from. @@ -395,7 +400,7 @@ Future<Response> FilesProcess::read(const Request& request) lambda::_1, offset, data, - request.query.get("jsonp"))) + request.url.query.get("jsonp"))) .onAny(lambda::bind(&os::close, fd.get())); } @@ -414,7 +419,7 @@ const string FilesProcess::DOWNLOAD_HELP = HELP( Future<Response> FilesProcess::download(const Request& request) { - Option<string> path = request.query.get("path"); + Option<string> path = request.url.query.get("path"); if (!path.isSome() || path.get().empty()) { return BadRequest("Expecting 'path=value' in query.\n"); @@ -469,7 +474,7 @@ Future<Response> FilesProcess::debug(const Request& request) foreachpair (const string& name, const string& path, paths) { object.values[name] = path; } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/master/http.cpp ---------------------------------------------------------------------- diff --git a/src/master/http.cpp b/src/master/http.cpp index cd37c91..4b9f9ed 100644 --- a/src/master/http.cpp +++ b/src/master/http.cpp @@ -333,7 +333,7 @@ void Master::Http::log(const Request& request) Option<string> userAgent = request.headers.get("User-Agent"); Option<string> forwardedFor = request.headers.get("X-Forwarded-For"); - LOG(INFO) << "HTTP " << request.method << " for " << request.path + LOG(INFO) << "HTTP " << request.method << " for " << request.url.path << " from " << request.client << (userAgent.isSome() ? " with User-Agent='" + userAgent.get() + "'" @@ -780,7 +780,7 @@ Future<Response> Master::Http::slaves(const Request& request) const } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } @@ -926,7 +926,7 @@ Future<Response> Master::Http::state(const Request& request) const object.values["unregistered_frameworks"] = std::move(array); } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } @@ -1188,7 +1188,7 @@ Future<Response> Master::Http::stateSummary(const Request& request) const object.values["frameworks"] = std::move(array); } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } @@ -1214,7 +1214,7 @@ Future<Response> Master::Http::roles(const Request& request) const object.values["roles"] = std::move(array); } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } @@ -1376,10 +1376,10 @@ struct TaskComparator Future<Response> Master::Http::tasks(const Request& request) const { // Get list options (limit and offset). - Result<int> result = numify<int>(request.query.get("limit")); + Result<int> result = numify<int>(request.url.query.get("limit")); size_t limit = result.isSome() ? result.get() : TASK_LIMIT; - result = numify<int>(request.query.get("offset")); + result = numify<int>(request.url.query.get("offset")); size_t offset = result.isSome() ? result.get() : 0; // TODO(nnielsen): Currently, formatting errors in offset and/or limit @@ -1409,7 +1409,7 @@ Future<Response> Master::Http::tasks(const Request& request) const // Sort tasks by task status timestamp. Default order is descending. // The earliest timestamp is chosen for comparison when multiple are present. - Option<string> order = request.query.get("order"); + Option<string> order = request.url.query.get("order"); if (order.isSome() && (order.get() == "asc")) { sort(tasks.begin(), tasks.end(), TaskComparator::ascending); } else { @@ -1429,7 +1429,7 @@ Future<Response> Master::Http::tasks(const Request& request) const object.values["tasks"] = std::move(array); } - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } @@ -1458,7 +1458,7 @@ Future<Response> Master::Http::maintenanceSchedule(const Request& request) const mesos::maintenance::Schedule() : master->maintenance.schedules.front(); - return OK(JSON::Protobuf(schedule), request.query.get("jsonp")); + return OK(JSON::Protobuf(schedule), request.url.query.get("jsonp")); } // Parse the POST body as JSON. @@ -1813,7 +1813,7 @@ Future<Response> Master::Http::maintenanceStatus(const Request& request) const } } - return OK(JSON::Protobuf(status), request.query.get("jsonp")); + return OK(JSON::Protobuf(status), request.url.query.get("jsonp")); })); } http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/master/registrar.cpp ---------------------------------------------------------------------- diff --git a/src/master/registrar.cpp b/src/master/registrar.cpp index d81560a..1117232 100644 --- a/src/master/registrar.cpp +++ b/src/master/registrar.cpp @@ -245,7 +245,7 @@ Future<Response> RegistrarProcess::registry(const Request& request) result = JSON::Protobuf(variable.get().get()); } - return OK(result, request.query.get("jsonp")); + return OK(result, request.url.query.get("jsonp")); } http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/slave/http.cpp ---------------------------------------------------------------------- diff --git a/src/slave/http.cpp b/src/slave/http.cpp index cddc8ad..f9cf7bb 100644 --- a/src/slave/http.cpp +++ b/src/slave/http.cpp @@ -186,7 +186,7 @@ void Slave::Http::log(const Request& request) Option<string> userAgent = request.headers.get("User-Agent"); Option<string> forwardedFor = request.headers.get("X-Forwarded-For"); - LOG(INFO) << "HTTP " << request.method << " for " << request.path + LOG(INFO) << "HTTP " << request.method << " for " << request.url.path << " from " << request.client << (userAgent.isSome() ? " with User-Agent='" + userAgent.get() + "'" @@ -404,7 +404,7 @@ Future<Response> Slave::Http::state(const Request& request) const } object.values["flags"] = flags; - return OK(object, request.query.get("jsonp")); + return OK(object, request.url.query.get("jsonp")); } } // namespace slave { http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/slave/monitor.cpp ---------------------------------------------------------------------- diff --git a/src/slave/monitor.cpp b/src/slave/monitor.cpp index 8d8b422..aa6e958 100644 --- a/src/slave/monitor.cpp +++ b/src/slave/monitor.cpp @@ -147,7 +147,7 @@ private: } } - return http::OK(result, request.query.get("jsonp")); + return http::OK(result, request.url.query.get("jsonp")); } // Callback used to retrieve resource usage information from slave. http://git-wip-us.apache.org/repos/asf/mesos/blob/c9d2017c/src/tests/fetcher_cache_tests.cpp ---------------------------------------------------------------------- diff --git a/src/tests/fetcher_cache_tests.cpp b/src/tests/fetcher_cache_tests.cpp index b709b1e..31ca146 100644 --- a/src/tests/fetcher_cache_tests.cpp +++ b/src/tests/fetcher_cache_tests.cpp @@ -788,11 +788,11 @@ public: synchronized (mutex) { countRequests++; - if (strings::contains(event.request->path, COMMAND_NAME)) { + if (strings::contains(event.request->url.path, COMMAND_NAME)) { countCommandRequests++; } - if (strings::contains(event.request->path, ARCHIVE_NAME)) { + if (strings::contains(event.request->url.path, ARCHIVE_NAME)) { countArchiveRequests++; }
