Emacs/cc-ide: More robust function movement
[mediaserv.git] / Server / HTTPLogger.hh
1 // $Id$
2 //
3 // Copyright (C) 2006 
4
5 #ifndef HH_HTTPLogger_
6 #define HH_HTTPLogger_ 1
7
8 // Custom includes
9 #include <fstream>
10 #include "Socket/FileHandle.hh"
11 #include "HTTPRequest.hh"
12
13 //#include "HTTPLogger.mpp"
14 ///////////////////////////////hh.p////////////////////////////////////////
15
16 namespace g0dil {
17 namespace mediaserv {
18
19     class HTTPLogger
20     {
21     public:
22         ///////////////////////////////////////////////////////////////////////////
23         ///\name Structors and default members
24         ///@{
25
26         HTTPLogger(std::string logfile);
27         ~HTTPLogger();
28
29         ///@}
30         ///////////////////////////////////////////////////////////////////////////
31         
32         void invalidRequest(std::string message);
33         void invalidRequest(HTTPRequest const & request, std::string message);
34         void failedRequest(std::string message);
35         void failedRequest(HTTPRequest const & request, std::string message);
36         void request(HTTPRequest const & request, unsigned bytes);
37
38     protected:
39
40     private:
41         std::ofstream logFile_;
42     };
43
44     struct InvalidLogFileException : public std::exception
45     { char const * what() const throw() { return "invalid log file"; } };
46
47 }}
48
49 ///////////////////////////////hh.e////////////////////////////////////////
50 //#include "HTTPLogger.cci"
51 //#include "HTTPLogger.ct"
52 //#include "HTTPLogger.cti"
53 //#include "HTTPLogger.mpp"
54 #endif
55
56 \f
57 // Local Variables:
58 // mode: c++
59 // End: