#ifndef PsychicResponse_h #define PsychicResponse_h #include "PsychicCore.h" #include "time.h" class PsychicRequest; class PsychicResponse { protected: PsychicRequest * _request; int _code; char _status[60]; std::list _headers; int64_t _contentLength; const char * _body; public: PsychicResponse(PsychicRequest * request); virtual ~PsychicResponse(); void setCode(int code); void setContentType(const char * contentType); void setContentLength(int64_t contentLength) { _contentLength = contentLength; } int64_t getContentLength(int64_t contentLength) { return _contentLength; } void addHeader(const char * field, const char * value); void setCookie(const char * key, const char * value, unsigned long max_age = 60 * 60 * 24 * 30, const char * extras = ""); void setContent(const char * content); void setContent(const uint8_t * content, size_t len); const char * getContent(); size_t getContentLength(); virtual esp_err_t send(); void sendHeaders(); esp_err_t sendChunk(uint8_t * chunk, size_t chunksize); esp_err_t finishChunking(); }; #endif // PsychicResponse_h