]> git.ipfire.org Git - thirdparty/squid.git/blob - src/mgr/ActionParams.h
Merged from parent (trunk 11270, circa 3.2.0.5+)
[thirdparty/squid.git] / src / mgr / ActionParams.h
1 /*
2 * $Id$
3 *
4 * DEBUG: section 16 Cache Manager API
5 *
6 */
7
8 #ifndef SQUID_MGR_ACTION_PARAMS_H
9 #define SQUID_MGR_ACTION_PARAMS_H
10
11 #include "HttpRequestMethod.h"
12 #include "ipc/forward.h"
13 #include "mgr/QueryParams.h"
14
15 namespace Mgr
16 {
17
18 /// Cache Manager Action parameters extracted from the user request
19 class ActionParams
20 {
21 public:
22 ActionParams();
23
24 explicit ActionParams(const Ipc::TypedMsgHdr &msg); ///< load from msg
25 void pack(Ipc::TypedMsgHdr &msg) const; ///< store into msg
26
27 public:
28 /* details of the client HTTP request that caused the action */
29 String httpUri; ///< HTTP request URI
30 _method_t httpMethod; ///< HTTP request method
31 request_flags httpFlags; ///< HTTP request flags
32
33 /* action parameters extracted from the client HTTP request */
34 String actionName; ///< action name (and credentials realm)
35 String userName; ///< user login name; currently only used for logging
36 String password; ///< user password; used for acceptance check and cleared
37 QueryParams queryParams;
38 };
39
40 } // namespace Mgr
41
42 std::ostream &operator <<(std::ostream &os, const Mgr::ActionParams &params);
43
44 #endif /* SQUID_MGR_ACTION_PARAMS_H */