]> git.ipfire.org Git - thirdparty/squid.git/blob - src/mgr/BasicActions.h
Merge form trunk
[thirdparty/squid.git] / src / mgr / BasicActions.h
1 /*
2 * $Id$
3 *
4 * DEBUG: section 16 Cache Manager API
5 *
6 */
7
8 #ifndef SQUID_MGR_BASIC_ACTIONS_H
9 #define SQUID_MGR_BASIC_ACTIONS_H
10
11 #include "mgr/Action.h"
12
13 /* a collection of simple, mostly stateless actions */
14
15
16 namespace Mgr
17 {
18
19 /// returns available Cache Manager actions and their access requirements
20 class MenuAction: public Action
21 {
22 public:
23 static Pointer Create(const CommandPointer &cmd);
24 /* Action API */
25 virtual void dump(StoreEntry *entry);
26
27 protected:
28 MenuAction(const CommandPointer &cmd);
29 };
30
31
32 /// shuts Squid down
33 class ShutdownAction: public Action
34 {
35 public:
36 static Pointer Create(const CommandPointer &cmd);
37 /* Action API */
38 virtual void dump(StoreEntry *entry);
39
40 protected:
41 ShutdownAction(const CommandPointer &cmd);
42 };
43
44 /// reconfigures Squid
45 class ReconfigureAction: public Action
46 {
47 public:
48 static Pointer Create(const CommandPointer &cmd);
49 /* Action API */
50 virtual void dump(StoreEntry *entry);
51
52 protected:
53 ReconfigureAction(const CommandPointer &cmd);
54 };
55
56 /// starts log rotation
57 class RotateAction: public Action
58 {
59 public:
60 static Pointer Create(const CommandPointer &cmd);
61 /* Action API */
62 virtual void dump(StoreEntry *entry);
63
64 protected:
65 RotateAction(const CommandPointer &cmd);
66 };
67
68 /// changes offline mode
69 class OfflineToggleAction: public Action
70 {
71 public:
72 static Pointer Create(const CommandPointer &cmd);
73 /* Action API */
74 virtual void dump(StoreEntry *entry);
75
76 protected:
77 OfflineToggleAction(const CommandPointer &cmd);
78 };
79
80 /// Registeres profiles for the actions above; \todo move elsewhere?
81 void RegisterBasics();
82
83 } // namespace Mgr
84
85 #endif /* SQUID_MGR_BASIC_ACTIONS_H */