• Main Page
  • Classes
  • Files
  • File List
  • File Members

lib/bfHttpServer/src/httpresponse.h

Go to the documentation of this file.
00001 
00006 #ifndef HTTPRESPONSE_H
00007 #define HTTPRESPONSE_H
00008 
00009 #include <QMap>
00010 #include <QString>
00011 #include <QTcpSocket>
00012 #include "httpcookie.h"
00013 
00036 class HttpResponse {
00037     Q_DISABLE_COPY(HttpResponse)
00038 public:
00039 
00044     HttpResponse(QTcpSocket* socket);
00045 
00051     void setHeader(QByteArray name, QByteArray value);
00052 
00058     void setHeader(QByteArray name, int value);
00059 
00061     QMap<QByteArray,QByteArray>& getHeaders();
00062 
00064     QMap<QByteArray,HttpCookie>& getCookies();
00065 
00069     void setStatus(int statusCode, QByteArray description=QByteArray());
00070 
00085     void write(QByteArray data, bool lastPart=false);
00086 
00091     bool hasSentLastPart() const;
00092 
00097     void setCookie(const HttpCookie& cookie);
00098 
00099 private:
00100 
00102     QMap<QByteArray,QByteArray> headers;
00103 
00105     QTcpSocket* socket;
00106 
00108     int statusCode;
00109 
00111     QByteArray statusText;
00112 
00114     bool sentHeaders;
00115 
00117     bool sentLastPart;
00118 
00120     QMap<QByteArray,HttpCookie> cookies;
00121 
00123     void writeToSocket(QByteArray data);
00124 
00130     void writeHeaders();
00131 
00132 };
00133 
00134 #endif // HTTPRESPONSE_H

Generated on Mon Dec 26 2011 12:09:22 for QtWebApp by  doxygen 1.7.1