]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
The ClientRequestContext class used to be defined in client_side_request.cc.
authorwessels <>
Tue, 22 Nov 2005 06:32:01 +0000 (06:32 +0000)
committerwessels <>
Tue, 22 Nov 2005 06:32:01 +0000 (06:32 +0000)
It has been moved to its own .h file for ICAP integration.

src/ClientRequestContext.h [new file with mode: 0644]

diff --git a/src/ClientRequestContext.h b/src/ClientRequestContext.h
new file mode 100644 (file)
index 0000000..85ff1e7
--- /dev/null
@@ -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);
+};
+