HasComponentData.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
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 
9 #ifndef SQUID_SRC_ACL_HASCOMPONENTDATA_H
10 #define SQUID_SRC_ACL_HASCOMPONENTDATA_H
11 
12 #include "acl/Checklist.h"
13 #include "acl/Data.h"
14 
16 class ACLHasComponentData : public ACLData<ACLChecklist *>
17 {
19 
20 public:
22 
23  /* ACLData<M> API */
24  bool match(ACLChecklist *) override;
25  SBufList dump() const override;
26  void parse() override;
27  bool empty() const override { return false; }
28 
29 private:
31  void parseComponent(const char *token);
32 
33  static const SBuf RequestStr;
34  static const SBuf ResponseStr;
35  static const SBuf AleStr;
36 
37  typedef bool (ACLChecklist::*ComponentCheck)() const;
39  std::vector<ComponentCheck> componentMethods;
40 };
41 
42 #endif /* SQUID_SRC_ACL_HASCOMPONENTDATA_H */
43 
static const SBuf AleStr
std::list< SBuf > SBufList
Definition: forward.h:22
Definition: SBuf.h:93
bool(ACLChecklist::* ComponentCheck)() const
bool match(ACLChecklist *) override
Configured ACL parameter(s) (e.g., domain names in dstdomain ACL).
Definition: Data.h:17
void parseComponent(const char *token)
bool empty() const override
static const SBuf RequestStr
static const SBuf ResponseStr
std::vector< ComponentCheck > componentMethods
component check callbacks, ordered by component kind ID
SBufList dump() const override
MEMPROXY_CLASS(ACLHasComponentData)
void parse() override

 

Introduction

Documentation

Support

Miscellaneous