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_ACLHIERCODE_H
10 #define SQUID_ACLHIERCODE_H
12 #include "acl/Strategised.h"
13 #include "acl/Strategy.h"
14 #include "hier_code.h"
17 class ACLHierCodeStrategy
: public ACLStrategy
<hier_code
>
21 virtual int match (ACLData
<MatchType
> * &, ACLFilledChecklist
*, ACLFlags
&);
22 virtual bool requiresRequest() const {return true;}
24 static ACLHierCodeStrategy
*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 ACLHierCodeStrategy(ACLHierCodeStrategy
const &);
35 static ACLHierCodeStrategy Instance_
;
36 ACLHierCodeStrategy() {}
38 ACLHierCodeStrategy
&operator=(ACLHierCodeStrategy
const &);
46 static ACL::Prototype RegistryProtoype
;
47 static ACLStrategised
<hier_code
> RegistryEntry_
;
50 #endif /* SQUID_ACLHIERCODE_H */