]>
Commit | Line | Data |
---|---|---|
0ab50441 | 1 | /* |
bbc27441 | 2 | * Copyright (C) 1996-2014 The Squid Software Foundation and contributors |
0ab50441 | 3 | * |
bbc27441 AJ |
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. | |
0ab50441 HN |
7 | */ |
8 | ||
2071bb4a AJ |
9 | #ifndef SQUID_ACLTAG_H |
10 | #define SQUID_ACLTAG_H | |
11 | ||
2071bb4a | 12 | #include "acl/Strategised.h" |
602d9612 | 13 | #include "acl/Strategy.h" |
0ab50441 HN |
14 | |
15 | class ACLTagStrategy : public ACLStrategy<const char *> | |
16 | { | |
17 | ||
18 | public: | |
33810b1d | 19 | virtual int match (ACLData<MatchType> * &, ACLFilledChecklist *, ACLFlags &); |
0ab50441 HN |
20 | static ACLTagStrategy *Instance(); |
21 | /* Not implemented to prevent copies of the instance. */ | |
22 | /* Not private to prevent brain dead g+++ warnings about | |
23 | * private constructors with no friends */ | |
24 | ACLTagStrategy(ACLTagStrategy const &); | |
25 | ||
26 | private: | |
27 | static ACLTagStrategy Instance_; | |
04f7fd38 | 28 | ACLTagStrategy() {} |
0ab50441 HN |
29 | |
30 | ACLTagStrategy&operator=(ACLTagStrategy const &); | |
31 | }; | |
32 | ||
33 | class ACLTag | |
34 | { | |
35 | ||
36 | private: | |
37 | static ACL::Prototype RegistryProtoype; | |
38 | static ACLStrategised<const char *> RegistryEntry_; | |
39 | }; | |
40 | ||
41 | #endif /* SQUID_ACLMYPORTNAME_H */ |