Repository navigation
Expand file tree
/
Copy pathHttpCacheMetadata.h
More file actions
60 lines (49 loc) · 1.85 KB
/
Copy pathHttpCacheMetadata.h
File metadata and controls
60 lines (49 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/*
* Copyright 2017 Sony Corporation
*/
#ifndef EASYHTTPCPP_HTTPCACHEMETADATA_H_INCLUDED
#define EASYHTTPCPP_HTTPCACHEMETADATA_H_INCLUDED
#include <ctime>
#include <string>
#include "Poco/Timestamp.h"
#include "easyhttpcpp/common/CacheMetadata.h"
#include "easyhttpcpp/Headers.h"
#include "easyhttpcpp/HttpExports.h"
#include "easyhttpcpp/Request.h"
namespace easyhttpcpp {
class EASYHTTPCPP_HTTP_INTERNAL_API HttpCacheMetadata : public easyhttpcpp::common::CacheMetadata {
public:
typedef Poco::AutoPtr<HttpCacheMetadata> Ptr;
HttpCacheMetadata();
~HttpCacheMetadata();
void setUrl(const std::string& url);
const std::string& getUrl() const;
void setHttpMethod(Request::HttpMethod httpMethod);
Request::HttpMethod getHttpMethod() const;
void setStatusCode(int statusCode);
int getStatusCode() const;
void setStatusMessage(const std::string& statusMessage);
const std::string& getStatusMessage() const;
void setResponseHeaders(Headers::Ptr pResponseHeaders);
Headers::Ptr getResponseHeaders() const;
void setResponseBodySize(size_t responseBodySize);
size_t getResponseBodySize() const;
void setSentRequestAtEpoch(std::time_t sentRequestAtEpoch);
std::time_t getSentRequestAtEpoch() const;
void setReceivedResponseAtEpoch(std::time_t receivedResponseAtEpoch);
std::time_t getReceivedResponseAtEpoch() const;
void setCreatedAtEpoch(std::time_t createdAtEpoch);
std::time_t getCreatedAtEpoch() const;
private:
std::string m_url;
Request::HttpMethod m_httpMethod;
int m_statusCode;
std::string m_statusMessage;
Headers::Ptr m_pResponseHeaders;
size_t m_responseBodySize;
std::time_t m_sentRequestAtEpoch;
std::time_t m_receivedResponseAtEpoch;
std::time_t m_createdAtEpoch;
};
} /* namespace easyhttpcpp */
#endif /* EASYHTTPCPP_HTTPCACHEMETADATA_H_INCLUDED */