aboutsummaryrefslogtreecommitdiffstats
path: root/icnet/http/icnet_http_request.h
diff options
context:
space:
mode:
Diffstat (limited to 'icnet/http/icnet_http_request.h')
-rw-r--r--icnet/http/icnet_http_request.h25
1 files changed, 9 insertions, 16 deletions
diff --git a/icnet/http/icnet_http_request.h b/icnet/http/icnet_http_request.h
index 985d7628..ec4a3d6f 100644
--- a/icnet/http/icnet_http_request.h
+++ b/icnet/http/icnet_http_request.h
@@ -15,6 +15,9 @@
#pragma once
+#include "icnet_utils_sharable_vector.h"
+#include "icnet_http_message.h"
+
#include <sstream>
#include <vector>
#include <map>
@@ -25,23 +28,11 @@ namespace icnet {
namespace http {
-typedef enum {
- GET,
- POST,
- PUT,
- PATCH,
- DELETE
-} HTTPMethod;
-
-typedef std::map<std::string, std::string> HTTPHeaders;
-typedef std::vector<uint8_t> HTTPPayload;
-typedef std::vector<uint8_t> HTTPResponse;
-
-class HTTPRequest {
+class HTTPRequest : public HTTPMessage {
public:
HTTPRequest(HTTPMethod method,
- std::string &url, HTTPHeaders &headers, HTTPPayload &payload);
+ const std::string &url, const HTTPHeaders &headers, const HTTPPayload &payload);
std::string &getQueryString();
@@ -55,9 +46,11 @@ class HTTPRequest {
std::string &getRequestString();
- HTTPHeaders &getHeaders();
+ HTTPHeaders &getHeaders() override;
+
+ HTTPPayload &getPayload() override;
- HTTPPayload &getPayload();
+ std::string &getHttpVersion() override;
private:
std::string query_string_, path_, protocol_, locator_, port_;