HttpResponseMessage.h Source File

Simu5G: HttpResponseMessage.h Source File
Simu5G
HttpResponseMessage.h
1
19
20#ifndef _HTTRESPONSEMESSAGE_H_
21#define _HTTRESPONSEMESSAGE_H_
22
23#include <string>
24#include "simu5g/common/LteDefs.h"
25#include "simu5g/mec/platform/services/messages/HttpMessages_m.h"
26
27namespace simu5g {
28
40
41class HttpResponseMessage : public HttpResponseMessage_m
42{
43 private:
44 std::map<std::string, std::string> headerFields_;
45
46 private:
47 void copy(const HttpResponseMessage& other);
48
49 public:
50 HttpResponseMessage(const char *name = nullptr, short kind = 0);
51 HttpResponseMessage(const HttpResponseStatus res, const char *name = nullptr, short kind = 0);
52 HttpResponseMessage& operator=(const HttpResponseMessage& other) { if (this == &other) return *this; HttpResponseMessage_m::operator=(other); copy(other); return *this; }
53
54 HttpResponseMessage *dup() const override { return new HttpResponseMessage(*this); }
55
56 virtual void addBodyChunk(const std::string& bodyChunk);
57 // key MUST be like "key: "
58 virtual void setHeaderField(const std::string& key, const std::string& value);
59 virtual std::string getHeaderField(const std::string& key) const;
60
61 virtual void setStatus(HttpResponseStatus code);
62 void setStatus(const char *status) override;
63 virtual std::string getPayload() const;
64};
65
66} //namespace
67
68#endif //_HTTRESPONSEMESSAGE_H_
Definition AlertReceiver.h:24