-// Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2018 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
#include <http/post_request_json.h>
#include <http/response_json.h>
#include <boost/pointer_cast.hpp>
+#include <iostream>
using namespace isc::data;
using namespace isc::http;
CtrlAgentResponseCreator::
createStockHttpResponse(const ConstHttpRequestPtr& request,
const HttpStatusCode& status_code) const {
+ HttpResponsePtr response = createStockHttpResponseInternal(request, status_code);
+ response->finalize();
+ return (response);
+}
+
+HttpResponsePtr
+CtrlAgentResponseCreator::
+createStockHttpResponseInternal(const ConstHttpRequestPtr& request,
+ const HttpStatusCode& status_code) const {
// The request hasn't been finalized so the request object
// doesn't contain any information about the HTTP version number
// used. But, the context should have this data (assuming the
}
// This will generate the response holding JSON content.
HttpResponsePtr response(new HttpResponseJson(http_version, status_code));
- response->finalize();
return (response);
}
}
// The response is ok, so let's create new HTTP response with the status OK.
HttpResponseJsonPtr http_response = boost::dynamic_pointer_cast<
- HttpResponseJson>(createStockHttpResponse(request, HttpStatusCode::OK));
+ HttpResponseJson>(createStockHttpResponseInternal(request, HttpStatusCode::OK));
http_response->setBodyAsJson(response);
http_response->finalize();
-// Copyright (C) 2017 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2018 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
private:
+ /// @brief Creates unfinalized stock HTTP response.
+ ///
+ /// @param request Pointer to an object representing HTTP request.
+ /// @param status_code Status code of the response.
+ /// @return Pointer to an @ref isc::http::HttpResponseJson object
+ /// representing stock HTTP response.
+ http::HttpResponsePtr
+ createStockHttpResponseInternal(const http::ConstHttpRequestPtr& request,
+ const http::HttpStatusCode& status_code) const;
+
/// @brief Creates implementation specific HTTP response.
///
/// @param request Pointer to an object representing HTTP request.