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