From: Kinkie Date: Wed, 2 Jul 2008 22:40:26 +0000 (+0200) Subject: imported changes from older tree X-Git-Tag: SQUID_3_1_0_1~49^2~143^2~53 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=327656eb9ecd30fbfe07c927387b3cf0c23a2dc9;p=thirdparty%2Fsquid.git imported changes from older tree --- 327656eb9ecd30fbfe07c927387b3cf0c23a2dc9 diff --cc src/CacheManager.h index db7a9108e1,34344a2ce5..832d97a92b --- a/src/CacheManager.h +++ b/src/CacheManager.h @@@ -41,40 -41,37 +41,49 @@@ \ingroup Components */ -/** - \ingroup CacheManagerAPI - * A single menu item in the cache manager - an 'action'. - */ -class CacheManagerAction -{ +class CacheManagerAction { +public: + virtual void run(StoreEntry *sentry) = 0; + char *action; + char *desc; + struct + { + unsigned int pw_req:1; + unsigned int atomic:1; + } flags; + CacheManagerAction *next; + virtual ~CacheManagerAction() { } +}; +class CacheManagerActionLegacy : public CacheManagerAction { public: - char *action; - char *desc; - OBJH *handler; - - struct - { - unsigned int pw_req:1; - unsigned int atomic:1; - } flags; + OBJH *handler; + virtual void run (StoreEntry *sentry); +}; - CacheManagerAction *next; +class CacheManagerShutdownAction : public CacheManagerAction { +public: + virtual void run (StoreEntry *sentry); }; +/// \ingroup CacheManagerInternal +typedef struct +{ + StoreEntry *entry; + char *action; + char *user_name; + char *passwd; +} cachemgrStateData; + /// \ingroup CacheManagerInternal + typedef struct + { + StoreEntry *entry; + char *action; + char *user_name; + char *passwd; + } cachemgrStateData; + /** \ingroup CacheManagerAPI * a CacheManager - the menu system for interacting with squid.