From: wessels <> Date: Tue, 22 Nov 2005 06:32:01 +0000 (+0000) Subject: The ClientRequestContext class used to be defined in client_side_request.cc. X-Git-Tag: SQUID_3_0_PRE4~503 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0f3055361608f76823430ae4a82abc27c749c672;p=thirdparty%2Fsquid.git The ClientRequestContext class used to be defined in client_side_request.cc. It has been moved to its own .h file for ICAP integration. --- diff --git a/src/ClientRequestContext.h b/src/ClientRequestContext.h new file mode 100644 index 0000000000..85ff1e75dd --- /dev/null +++ b/src/ClientRequestContext.h @@ -0,0 +1,49 @@ +#if ICAP_CLIENT +#include "ICAP/ICAPServiceRep.h" +#endif + +class ClientRequestContext : public RefCountable +{ + +public: + void *operator new(size_t); + void operator delete(void *); + + ClientRequestContext(ClientHttpRequest *); + ~ClientRequestContext(); + + bool httpStateIsValid(); + void clientAccessCheck(); + void clientAccessCheckDone(int answer); + void clientRedirectStart(); + void clientRedirectDone(char *result); + void checkNoCache(); + void checkNoCacheDone(int answer); +#if ICAP_CLIENT + + void icapAccessCheck(); + void icapAclCheckDone(ICAPServiceRep::Pointer service); +#endif + + ClientHttpRequest *http; + ACLChecklist *acl_checklist; /* need ptr back so we can unreg if needed */ + int redirect_state; + +int http_access_done: + 1; +#if ICAP_CLIENT + +int icap_acl_check_done: + 1; +#endif + +int redirect_done: + 1; + +int no_cache_done: + 1; + +private: + CBDATA_CLASS(ClientRequestContext); +}; +