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