]>
Commit | Line | Data |
---|---|---|
225b7b10 | 1 | /* |
ef57eb7b | 2 | * Copyright (C) 1996-2016 The Squid Software Foundation and contributors |
225b7b10 | 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. | |
225b7b10 | 7 | */ |
bbc27441 | 8 | |
225b7b10 | 9 | #ifndef SQUID_ACLDATA_H |
10 | #define SQUID_ACLDATA_H | |
11 | ||
65e41a45 | 12 | #include "sbuf/SBufList.h" |
e1f7507e | 13 | |
63be0a78 | 14 | /// \ingroup ACLAPI |
5dee515e | 15 | template <class M> |
62e76326 | 16 | class ACLData |
17 | { | |
18 | ||
19 | public: | |
225b7b10 | 20 | |
21 | virtual ~ACLData() {} | |
62e76326 | 22 | |
5dee515e | 23 | virtual bool match(M) =0; |
4f8ca96e | 24 | virtual SBufList dump() const =0; |
225b7b10 | 25 | virtual void parse() =0; |
26 | virtual ACLData *clone() const =0; | |
65092baf | 27 | virtual void prepareForUse() {} |
b0dd28ba | 28 | |
65092baf | 29 | virtual bool empty() const =0; |
30 | }; | |
225b7b10 | 31 | |
32 | #endif /* SQUID_ACLDATA_H */ | |
f53969cc | 33 |