2 * Copyright (C) 1996-2014 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_ACLMETHOD_H
10 #define SQUID_ACLMETHOD_H
12 #include "acl/Strategised.h"
13 #include "acl/Strategy.h"
14 #include "HttpRequestMethod.h"
17 class ACLMethodStrategy
: public ACLStrategy
<HttpRequestMethod
>
21 virtual int match (ACLData
<MatchType
> * &, ACLFilledChecklist
*, ACLFlags
&);
22 virtual bool requiresRequest() const {return true;}
24 static ACLMethodStrategy
*Instance();
27 * Not implemented to prevent copies of the instance.
29 * Not private to prevent brain dead g+++ warnings about
30 * private constructors with no friends
32 ACLMethodStrategy(ACLMethodStrategy
const &);
35 static ACLMethodStrategy Instance_
;
36 ACLMethodStrategy() {}
38 ACLMethodStrategy
&operator=(ACLMethodStrategy
const &);
46 static ACL::Prototype RegistryProtoype
;
47 static ACLStrategised
<HttpRequestMethod
> RegistryEntry_
;
50 #endif /* SQUID_ACLMETHOD_H */