author | Michael Krelin <hacker@klever.net> | 2005-05-09 11:04:24 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2005-05-09 11:04:24 (UTC) |
commit | 01e3789f5b7c3b2c0282b70eb203d11c76d3c8f3 (patch) (unidiff) | |
tree | 580ebd4a1379c40cfbaa925849de2e42dd7cd441 /include | |
parent | 981b219f5297ad2ccc1fc1d0e24e41ec009c35a3 (diff) | |
download | sitecing-01e3789f5b7c3b2c0282b70eb203d11c76d3c8f3.zip sitecing-01e3789f5b7c3b2c0282b70eb203d11c76d3c8f3.tar.gz sitecing-01e3789f5b7c3b2c0282b70eb203d11c76d3c8f3.tar.bz2 |
made use of kingate's headers container.
-rw-r--r-- | include/sitecing/sitecing_interface_cgi.h | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/include/sitecing/sitecing_interface_cgi.h b/include/sitecing/sitecing_interface_cgi.h index da538d6..d17cdb7 100644 --- a/include/sitecing/sitecing_interface_cgi.h +++ b/include/sitecing/sitecing_interface_cgi.h | |||
@@ -1,83 +1,80 @@ | |||
1 | #ifndef __SITECING_SITECING_INTERFACE_CGI_H | 1 | #ifndef __SITECING_SITECING_INTERFACE_CGI_H |
2 | #define __SITECING_SITECING_INTERFACE_CGI_H | 2 | #define __SITECING_SITECING_INTERFACE_CGI_H |
3 | 3 | ||
4 | #include <sstream> | 4 | #include <sstream> |
5 | #include <string> | 5 | #include <string> |
6 | #include <map> | 6 | #include <map> |
7 | #include "kingate/cgi_gateway.h" | 7 | #include <kingate/cgi_gateway.h> |
8 | #include <kingate/headers.h> | ||
8 | #include "sitecing/sitecing_interface.h" | 9 | #include "sitecing/sitecing_interface.h" |
9 | #include "sitecing/sitespace.h" | 10 | #include "sitecing/sitespace.h" |
10 | 11 | ||
11 | /** | 12 | /** |
12 | * @file | 13 | * @file |
13 | * @brief The sitecing_interface_cgi class declaration. | 14 | * @brief The sitecing_interface_cgi class declaration. |
14 | */ | 15 | */ |
15 | 16 | ||
16 | namespace sitecing { | 17 | namespace sitecing { |
17 | using namespace std; | 18 | using namespace std; |
18 | 19 | ||
19 | /** | 20 | /** |
20 | * The interface to site-C-ing core for the CGI component. | 21 | * The interface to site-C-ing core for the CGI component. |
21 | */ | 22 | */ |
22 | class sitecing_interface_cgi : public sitecing_interface { | 23 | class sitecing_interface_cgi : public sitecing_interface { |
23 | public: | 24 | public: |
24 | /** | 25 | /** |
25 | * Pointer to the CGI gateway interface. | 26 | * Pointer to the CGI gateway interface. |
26 | */ | 27 | */ |
27 | kingate::cgi_gateway* cgigw; | 28 | kingate::cgi_gateway* cgigw; |
28 | /** | 29 | /** |
29 | * Type for the map of headers to spit out. | ||
30 | */ | ||
31 | typedef map<string,string> headers_t; | ||
32 | /** | ||
33 | * The list of headers to spit out. | 30 | * The list of headers to spit out. |
34 | */ | 31 | */ |
35 | headers_t headers; | 32 | kingate::headers headers; |
36 | /** | 33 | /** |
37 | * Here is where we prebuffer output. | 34 | * Here is where we prebuffer output. |
38 | */ | 35 | */ |
39 | stringbuf prebuffer; | 36 | stringbuf prebuffer; |
40 | /** | 37 | /** |
41 | * Output stream, initially going to prebuffer. | 38 | * Output stream, initially going to prebuffer. |
42 | */ | 39 | */ |
43 | ostream outs; | 40 | ostream outs; |
44 | /** | 41 | /** |
45 | * Have headers been sent yet? | 42 | * Have headers been sent yet? |
46 | */ | 43 | */ |
47 | bool headers_flushed; | 44 | bool headers_flushed; |
48 | /** | 45 | /** |
49 | * Pointer to the sitespace object. | 46 | * Pointer to the sitespace object. |
50 | */ | 47 | */ |
51 | sitespace *ss; // XXX: or does it belong to the generic interface? or should this 'generic' interface exist at all? | 48 | sitespace *ss; // XXX: or does it belong to the generic interface? or should this 'generic' interface exist at all? |
52 | 49 | ||
53 | /** | 50 | /** |
54 | * @param s Pointer to the sitespace object. | 51 | * @param s Pointer to the sitespace object. |
55 | */ | 52 | */ |
56 | sitecing_interface_cgi(sitespace *s); | 53 | sitecing_interface_cgi(sitespace *s); |
57 | 54 | ||
58 | /** | 55 | /** |
59 | * Set up interface for the (possibly, new) cgi gateway object, | 56 | * Set up interface for the (possibly, new) cgi gateway object, |
60 | * reset headers, empty buffer, etc. | 57 | * reset headers, empty buffer, etc. |
61 | */ | 58 | */ |
62 | void prepare(kingate::cgi_gateway *cg); | 59 | void prepare(kingate::cgi_gateway *cg); |
63 | /** | 60 | /** |
64 | * Flush output stream. | 61 | * Flush output stream. |
65 | */ | 62 | */ |
66 | void flush(bool keep_buffering=false); | 63 | void flush(bool keep_buffering=false); |
67 | /** | 64 | /** |
68 | * Send headers to the output stream, if we haven't yet. | 65 | * Send headers to the output stream, if we haven't yet. |
69 | */ | 66 | */ |
70 | void flush_headers(); | 67 | void flush_headers(); |
71 | /** | 68 | /** |
72 | * Are we buffering now? | 69 | * Are we buffering now? |
73 | */ | 70 | */ |
74 | bool is_buffering(); | 71 | bool is_buffering(); |
75 | /** | 72 | /** |
76 | * Control output buffering. | 73 | * Control output buffering. |
77 | */ | 74 | */ |
78 | void set_buffering(bool do_buffer); | 75 | void set_buffering(bool do_buffer); |
79 | 76 | ||
80 | }; | 77 | }; |
81 | } | 78 | } |
82 | 79 | ||
83 | #endif /* __SITECING_SITECING_INTERFACE_CGI_H */ | 80 | #endif /* __SITECING_SITECING_INTERFACE_CGI_H */ |