summaryrefslogtreecommitdiffabout
path: root/include/kingate/cgi_gateway.h
Unidiff
Diffstat (limited to 'include/kingate/cgi_gateway.h') (more/less context) (ignore whitespace changes)
-rw-r--r--include/kingate/cgi_gateway.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/kingate/cgi_gateway.h b/include/kingate/cgi_gateway.h
index a5c4056..f20d72b 100644
--- a/include/kingate/cgi_gateway.h
+++ b/include/kingate/cgi_gateway.h
@@ -1,68 +1,73 @@
1#ifndef __KINGATE_CGI_GATEWAY_H 1#ifndef __KINGATE_CGI_GATEWAY_H
2#define __KINGATE_CGI_GATEWAY_H 2#define __KINGATE_CGI_GATEWAY_H
3 3
4#include <map> 4#include <map>
5#include "kingate/cgi_interface.h" 5#include "kingate/cgi_interface.h"
6#include "kingate/cookies.h"
6 7
7#ifndef __deprecated 8#ifndef __deprecated
8#if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3 9#if ( __GNUC__ == 3 && __GNUC_MINOR__ > 0 ) || __GNUC__ > 3
9#define __deprecated __attribute__((deprecated)) 10#define __deprecated __attribute__((deprecated))
10#else 11#else
11#define __deprecated 12#define __deprecated
12#endif 13#endif
13#endif 14#endif
14 15
15/** 16/**
16 * @file 17 * @file
17 * @brief the cgi_gateway -- main interface to CGI. 18 * @brief the cgi_gateway -- main interface to CGI.
18 */ 19 */
19 20
20namespace kingate { 21namespace kingate {
21 using namespace std; 22 using namespace std;
22 23
23 /** 24 /**
24 * The main class interfacing with the CGI environment. 25 * The main class interfacing with the CGI environment.
25 */ 26 */
26 class cgi_gateway { 27 class cgi_gateway {
27 public: 28 public:
28 /** 29 /**
29 * The interface to CGI environment (e.g. fastcgi). 30 * The interface to CGI environment (e.g. fastcgi).
30 */ 31 */
31 cgi_interface& iface; 32 cgi_interface& iface;
32 /** 33 /**
33 * The type describing map holding parameters parsed from query string or input. 34 * The type describing map holding parameters parsed from query string or input.
34 */ 35 */
35 typedef multimap<string,string> params_t; 36 typedef multimap<string,string> params_t;
36 /** 37 /**
37 * The GET-passed parameters. 38 * The GET-passed parameters.
38 */ 39 */
39 params_t get; 40 params_t get;
40 /** 41 /**
41 * The POST-passed parameters. 42 * The POST-passed parameters.
42 */ 43 */
43 params_t post; 44 params_t post;
44 /** 45 /**
46 * Cookies passed.
47 */
48 cookies_t cookies;
49 /**
45 * Was the stdin content parsed? 50 * Was the stdin content parsed?
46 */ 51 */
47 bool b_parsed_content; 52 bool b_parsed_content;
48 53
49 /** 54 /**
50 * @param ci the interface to use. 55 * @param ci the interface to use.
51 */ 56 */
52 cgi_gateway(cgi_interface& ci); 57 cgi_gateway(cgi_interface& ci);
53 58
54 /** 59 /**
55 * Check whether there is an 'environment' meta-variable with specific name 60 * Check whether there is an 'environment' meta-variable with specific name
56 * passed to CGI. 61 * passed to CGI.
57 * @param n variable name. 62 * @param n variable name.
58 * @return true if yes. 63 * @return true if yes.
59 * @see cgi_interface::has_meta() 64 * @see cgi_interface::has_meta()
60 * @see get_meta() 65 * @see get_meta()
61 */ 66 */
62 bool has_meta(const string& n) const { return iface.has_meta(n); } 67 bool has_meta(const string& n) const { return iface.has_meta(n); }
63 /** 68 /**
64 * Retrieve the 'environment' meta-variable value. 69 * Retrieve the 'environment' meta-variable value.
65 * @param n variable name. 70 * @param n variable name.
66 * @return variable contents. 71 * @return variable contents.
67 * @see exception_notfound 72 * @see exception_notfound
68 * @see cgi_interface::get_meta() 73 * @see cgi_interface::get_meta()