]> git.ipfire.org Git - thirdparty/squid.git/blob - src/mgr/ActionParams.h
Merge from sbuf-tokenizer
[thirdparty/squid.git] / src / mgr / ActionParams.h
1 /*
2 * DEBUG: section 16 Cache Manager API
3 *
4 */
5
6 #ifndef SQUID_MGR_ACTION_PARAMS_H
7 #define SQUID_MGR_ACTION_PARAMS_H
8
9 #include "http/RequestMethod.h"
10 #include "ipc/forward.h"
11 #include "mgr/QueryParams.h"
12 #include "RequestFlags.h"
13
14 namespace Mgr
15 {
16
17 /// Cache Manager Action parameters extracted from the user request
18 class ActionParams
19 {
20 public:
21 ActionParams();
22
23 explicit ActionParams(const Ipc::TypedMsgHdr &msg); ///< load from msg
24 void pack(Ipc::TypedMsgHdr &msg) const; ///< store into msg
25
26 public:
27 /* details of the client HTTP request that caused the action */
28 String httpUri; ///< HTTP request URI
29 HttpRequestMethod httpMethod; ///< HTTP request method
30 RequestFlags httpFlags; ///< HTTP request flags
31 String httpOrigin; ///< HTTP Origin: header (if any)
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 */