]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/NoteData.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / acl / NoteData.h
CommitLineData
bbc27441 1/*
bde978a6 2 * Copyright (C) 1996-2015 The Squid Software Foundation and contributors
bbc27441
AJ
3 *
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.
7 */
8
39baccc8
CT
9#ifndef SQUID_ACLNOTEDATA_H
10#define SQUID_ACLNOTEDATA_H
11
12#include "acl/Data.h"
602d9612 13#include "SquidString.h"
39baccc8
CT
14
15class HttpRequest;
16class NotePairs;
17
18/// \ingroup ACLAPI
19class ACLNoteData : public ACLData<HttpRequest *>
20{
39baccc8
CT
21 MEMPROXY_CLASS(ACLNoteData);
22
741c2986 23public:
39baccc8
CT
24 ACLNoteData();
25 virtual ~ACLNoteData();
26 virtual bool match(HttpRequest* request);
4f8ca96e 27 virtual SBufList dump() const;
39baccc8
CT
28 virtual void parse();
29 virtual bool empty() const;
30 virtual ACLData<HttpRequest *> *clone() const;
31
32private:
33 bool matchNotes(NotePairs *note);
34 String name; ///< Note name to check. It is always set
35 ACLData<char const *> *values; ///< if set, at least one value must match
36};
37
39baccc8 38#endif /* SQUID_ACLNOTEDATA_H */
f53969cc 39