]>
Commit | Line | Data |
---|---|---|
5dee515e | 1 | /* |
ef57eb7b | 2 | * Copyright (C) 1996-2016 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 | ||
1e40905d AJ |
9 | #ifndef SQUID_ACLLOCALPORT_H |
10 | #define SQUID_ACLLOCALPORT_H | |
63be0a78 | 11 | |
127dce76 | 12 | #include "acl/Strategised.h" |
602d9612 | 13 | #include "acl/Strategy.h" |
5dee515e | 14 | |
63be0a78 | 15 | /// \ingroup ACLAPI |
1e40905d | 16 | class ACLLocalPortStrategy : public ACLStrategy<int> |
62e76326 | 17 | { |
18 | ||
19 | public: | |
33810b1d | 20 | virtual int match (ACLData<MatchType> * &, ACLFilledChecklist *, ACLFlags &); |
1e40905d | 21 | static ACLLocalPortStrategy *Instance(); |
63be0a78 | 22 | /** |
23 | * Not implemented to prevent copies of the instance. | |
24 | \par | |
25 | * Not private to prevent brain dead g+++ warnings about | |
26 | * private constructors with no friends | |
27 | */ | |
1e40905d | 28 | ACLLocalPortStrategy(ACLLocalPortStrategy const &); |
b0dd28ba | 29 | |
30 | private: | |
1e40905d AJ |
31 | static ACLLocalPortStrategy Instance_; |
32 | ACLLocalPortStrategy() {} | |
62e76326 | 33 | |
1e40905d | 34 | ACLLocalPortStrategy&operator=(ACLLocalPortStrategy const &); |
b0dd28ba | 35 | }; |
36 | ||
63be0a78 | 37 | /// \ingroup ACLAPI |
1e40905d | 38 | class ACLLocalPort |
b0dd28ba | 39 | { |
62e76326 | 40 | |
b0dd28ba | 41 | private: |
42 | static ACL::Prototype RegistryProtoype; | |
43 | static ACLStrategised<int> RegistryEntry_; | |
44 | }; | |
5dee515e | 45 | |
1e40905d | 46 | #endif /* SQUID_ACLLOCALPORT_H */ |
f53969cc | 47 |