aboutsummaryrefslogtreecommitdiffstats
path: root/libtransport/src/hicn/transport/http
diff options
context:
space:
mode:
authorMauro Sardara <msardara@cisco.com>2019-02-04 11:06:18 +0100
committerAlberto Compagno <acompagn+fdio@cisco.com>2019-03-05 09:56:19 +0000
commit6d7704c1b497341fd6dd3c27e3f64d0db062ccc2 (patch)
tree668c6820653cd84da8474d330d2807a8765f96b5 /libtransport/src/hicn/transport/http
parentca66305af16e2f8d8f271218ea71f132e6c21916 (diff)
[HICN-11] Rework on transport protocols improving components modularity
Change-Id: I6683ec5b494238dc93591c103d25275e89b9f267 Signed-off-by: Mauro Sardara <msardara@cisco.com>
Diffstat (limited to 'libtransport/src/hicn/transport/http')
-rw-r--r--libtransport/src/hicn/transport/http/callbacks.h6
-rw-r--r--libtransport/src/hicn/transport/http/client_connection.cc7
-rw-r--r--libtransport/src/hicn/transport/http/client_connection.h2
-rw-r--r--libtransport/src/hicn/transport/http/message.h2
-rw-r--r--libtransport/src/hicn/transport/http/request.h1
-rw-r--r--libtransport/src/hicn/transport/http/response.h3
-rw-r--r--libtransport/src/hicn/transport/http/server_publisher.h2
7 files changed, 11 insertions, 12 deletions
diff --git a/libtransport/src/hicn/transport/http/callbacks.h b/libtransport/src/hicn/transport/http/callbacks.h
index 5ca5fcbe2..a0f3d5999 100644
--- a/libtransport/src/hicn/transport/http/callbacks.h
+++ b/libtransport/src/hicn/transport/http/callbacks.h
@@ -35,9 +35,9 @@ using OnHttpRequest =
std::size_t, int request_id)>;
using DeadlineTimerCallback = std::function<void(const std::error_code& e)>;
using ReceiveCallback = std::function<void(const std::vector<uint8_t>&)>;
-using OnPayloadCallback = std::function<RC(
- const std::error_code& ec, const core::Name& name,
- const std::shared_ptr<utils::SharableVector<uint8_t>>& payload)>;
+using OnPayloadCallback =
+ std::function<RC(const std::error_code& ec, const core::Name& name,
+ const ContentBuffer& payload)>;
using ContentSentCallback =
std::function<void(const std::error_code&, const core::Name&)>;
diff --git a/libtransport/src/hicn/transport/http/client_connection.cc b/libtransport/src/hicn/transport/http/client_connection.cc
index d4207bb81..e2ee6478d 100644
--- a/libtransport/src/hicn/transport/http/client_connection.cc
+++ b/libtransport/src/hicn/transport/http/client_connection.cc
@@ -118,14 +118,17 @@ std::string HTTPClientConnection::sendRequestGetReply(
stream << "|0";
- consumer_.consume(Name(stream.str()), *response);
+ ContentBuffer response_ptr =
+ std::static_pointer_cast<std::vector<uint8_t>>(response);
+
+ consumer_.consume(Name(stream.str()), response_ptr);
consumer_.stop();
return stream.str();
}
-HTTPResponse &&HTTPClientConnection::response() {
+HTTPResponse HTTPClientConnection::response() {
// response_->parse();
return std::move(*response_);
}
diff --git a/libtransport/src/hicn/transport/http/client_connection.h b/libtransport/src/hicn/transport/http/client_connection.h
index f6e1fa03e..faad1864c 100644
--- a/libtransport/src/hicn/transport/http/client_connection.h
+++ b/libtransport/src/hicn/transport/http/client_connection.h
@@ -44,7 +44,7 @@ class HTTPClientConnection {
HTTPPayload payload = {},
std::shared_ptr<HTTPResponse> response = nullptr);
- HTTPResponse &&response();
+ HTTPResponse response();
HTTPClientConnection &stop();
diff --git a/libtransport/src/hicn/transport/http/message.h b/libtransport/src/hicn/transport/http/message.h
index b2f271bcb..270dd3f0e 100644
--- a/libtransport/src/hicn/transport/http/message.h
+++ b/libtransport/src/hicn/transport/http/message.h
@@ -19,8 +19,6 @@
#include <hicn/transport/portability/win_portability.h>
#endif
-#include <hicn/transport/utils/sharable_vector.h>
-
#include <map>
#include <sstream>
#include <vector>
diff --git a/libtransport/src/hicn/transport/http/request.h b/libtransport/src/hicn/transport/http/request.h
index 88d67d4ad..1202144c0 100644
--- a/libtransport/src/hicn/transport/http/request.h
+++ b/libtransport/src/hicn/transport/http/request.h
@@ -16,7 +16,6 @@
#pragma once
#include <hicn/transport/http/message.h>
-#include <hicn/transport/utils/sharable_vector.h>
#include <map>
#include <sstream>
diff --git a/libtransport/src/hicn/transport/http/response.h b/libtransport/src/hicn/transport/http/response.h
index e7dec8c40..b261a128a 100644
--- a/libtransport/src/hicn/transport/http/response.h
+++ b/libtransport/src/hicn/transport/http/response.h
@@ -17,7 +17,6 @@
#include <hicn/transport/http/message.h>
#include <hicn/transport/utils/array.h>
-#include <hicn/transport/utils/sharable_vector.h>
#include <map>
#include <sstream>
@@ -27,7 +26,7 @@ namespace transport {
namespace http {
-class HTTPResponse : public HTTPMessage, public utils::SharableVector<uint8_t> {
+class HTTPResponse : public HTTPMessage, public std::vector<uint8_t> {
public:
HTTPResponse(const HTTPHeaders &headers, const HTTPPayload &payload);
diff --git a/libtransport/src/hicn/transport/http/server_publisher.h b/libtransport/src/hicn/transport/http/server_publisher.h
index 91f7e43e9..f3c39c3fe 100644
--- a/libtransport/src/hicn/transport/http/server_publisher.h
+++ b/libtransport/src/hicn/transport/http/server_publisher.h
@@ -64,7 +64,7 @@ class HTTPServerPublisher {
ProducerInterestCallback interest_enter_callback_;
utils::UserCallback wait_callback_;
- utils::SharableVector<uint8_t> receive_buffer_;
+ ContentBuffer receive_buffer_;
};
} // end namespace http