Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

qhttpservletrunner.h

00001 // -*- c++ -*-
00002 
00003 #ifndef QHTTPSERVLETRUNNER_H
00004 #define QHTTPSERVLETRUNNER_H
00005 
00006 #include <qasciidict.h>
00007 #include <qcstring.h>
00008 #include <qvaluelist.h>
00009 
00010 class QTextStream;
00011 
00012 class QHttpServlet;
00013 class QHttpServletRequest;
00014 class QHttpServletResponse;
00015 class QHttpSession;
00016 class QHttpSessionContext;
00017 
00022 class QHttpServletRunner
00023 {
00024 public: 
00025    QHttpServletRunner();
00026    virtual ~QHttpServletRunner();
00027 
00029    QServletContext *context() { return ctx; }
00030 
00036    void addServlet( const char *path, QHttpServlet *sv );
00037 
00042    bool removeServlet( const char *path );
00043       
00045    QHttpServletRequest *createRequest( QTextStream *in );
00046 
00048    QHttpServletResponse *createResponse( QIODevice *out, QHttpServletRequest *req );
00049 
00057    bool processRequest( QHttpServletRequest *req, QHttpServletResponse *res );
00058    
00060    QHttpServlet *findServlet( QHttpServletRequest *req );
00061    
00062 private:
00063    QServletContext *ctx;
00064    QHttpSessionContext *sessctx;
00065    QValueList<QCString> paths;
00066    QAsciiDict<QHttpServlet> srvs;
00067    QString banner;
00068    
00069    struct QHttpServletRunnerPrivate *d;
00070 };
00071 
00072 #endif
00073 
00074 // Local Variables:
00075 // c-basic-offset: 3
00076 // End:

Generated on Wed Apr 9 23:50:21 2003 for QXServlet by doxygen1.2.17