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

lib/bfHttpServer/src/httpconnectionhandler.h

Go to the documentation of this file.
00001 
00006 #ifndef HTTPCONNECTIONHANDLER_H
00007 #define HTTPCONNECTIONHANDLER_H
00008 
00009 #include <QTcpSocket>
00010 #include <QSettings>
00011 #include <QTimer>
00012 #include <QThread>
00013 #include "httprequest.h"
00014 #include "httprequesthandler.h"
00015 
00032 class HttpConnectionHandler : public QThread {
00033     Q_OBJECT
00034     Q_DISABLE_COPY(HttpConnectionHandler)
00035 public:
00036 
00042     HttpConnectionHandler(QSettings* settings, HttpRequestHandler* requestHandler);
00043 
00045     virtual ~HttpConnectionHandler();
00046 
00048     bool isBusy();
00049 
00051     void setBusy();
00052 
00054     bool busy;
00055 
00056 private:
00057 
00059     QSettings* settings;
00060 
00062     QTcpSocket socket;
00063 
00065     QTimer readTimer;
00066 
00068     HttpRequest* currentRequest;
00069 
00071     HttpRequestHandler* requestHandler;
00072 
00074     void run();
00075 
00076 public slots:
00077 
00082     void handleConnection(int socketDescriptor);
00083 
00084 private slots:
00085 
00087     void readTimeout();
00088 
00090     void read();
00091 
00093     void disconnected();
00094 
00095 };
00096 
00097 #endif // HTTPCONNECTIONHANDLER_H

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