2 * Copyright (C) 1996-2017 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
9 #ifndef SQUID_ACLHTTPSTATUS_H
10 #define SQUID_ACLHTTPSTATUS_H
13 #include "acl/Checklist.h"
17 struct acl_httpstatus_data
{
19 acl_httpstatus_data(int);
20 acl_httpstatus_data(int, int);
21 SBuf
toStr() const; // was toStr
23 static int compare(acl_httpstatus_data
* const& a
, acl_httpstatus_data
* const& b
);
27 class ACLHTTPStatus
: public ACL
29 MEMPROXY_CLASS(ACLHTTPStatus
);
32 ACLHTTPStatus(char const *);
33 ACLHTTPStatus(ACLHTTPStatus
const &);
35 ACLHTTPStatus
&operator=(ACLHTTPStatus
const &);
37 virtual ACL
*clone()const;
38 virtual char const *typeString() const;
40 virtual int match(ACLChecklist
*checklist
);
41 virtual SBufList
dump() const;
42 virtual bool empty () const;
43 virtual bool requiresReply() const { return true; }
46 static Prototype RegistryProtoype
;
47 static ACLHTTPStatus RegistryEntry_
;
48 Splay
<acl_httpstatus_data
*> *data
;
52 #endif /* SQUID_ACLHTTPSTATUS_H */