5 #ifndef HH_SimpleHTTPServer_
6 #define HH_SimpleHTTPServer_ 1
10 #include <boost/utility.hpp>
11 #include "Socket/ServerSocketHandle.hh"
12 #include "Socket/CommunicationPolicy.hh"
13 #include "Socket/FramingPolicy.hh"
14 #include "Socket/ReadWritePolicy.hh"
15 #include "Scheduler/Scheduler.hh"
17 #include "HTTPLogger.hh"
18 #include "HTTPConnection.hh"
20 //#include "SimpleHTTPServer.mpp"
21 ///////////////////////////////hh.p////////////////////////////////////////
26 class SimpleHTTPServer
30 ///////////////////////////////////////////////////////////////////////////
33 typedef HTTPConnection::ClientHandle::ServerSocketHandle ServerHandle;
35 ///////////////////////////////////////////////////////////////////////////
36 ///\name Structors and default members
39 SimpleHTTPServer(ServerHandle socket, HTTPLogger & logger);
42 static SimpleHTTPServer & instance();
45 ///////////////////////////////////////////////////////////////////////////
47 void done(HTTPConnection::ptr connection);
52 void newConnection(ServerHandle handle, senf::Scheduler::EventId event);
54 typedef std::set<HTTPConnection::ptr> Connections;
58 Connections connections_;
60 static SimpleHTTPServer * instance_;
65 ///////////////////////////////hh.e////////////////////////////////////////
66 #include "SimpleHTTPServer.cci"
67 //#include "SimpleHTTPServer.ct"
68 //#include "SimpleHTTPServer.cti"
69 //#include "SimpleHTTPServer.mpp"