]> git.ipfire.org Git - thirdparty/squid.git/blame - src/acl/UrlPath.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / acl / UrlPath.h
CommitLineData
5dee515e 1/*
bbc27441 2 * Copyright (C) 1996-2014 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
9#ifndef SQUID_ACLURLPATH_H
10#define SQUID_ACLURLPATH_H
127dce76
AR
11#include "acl/Acl.h"
12#include "acl/Data.h"
127dce76 13#include "acl/Strategised.h"
602d9612 14#include "acl/Strategy.h"
5dee515e 15
b0dd28ba 16class ACLUrlPathStrategy : public ACLStrategy<char const *>
5dee515e 17{
62e76326 18
19public:
33810b1d 20 virtual int match (ACLData<char const *> * &, ACLFilledChecklist *, ACLFlags &);
5dee515e 21 virtual bool requiresRequest() const {return true;}
62e76326 22
5dee515e 23 static ACLUrlPathStrategy *Instance();
24 /* Not implemented to prevent copies of the instance. */
25 /* Not private to prevent brain dead g+++ warnings about
26 * private constructors with no friends */
27 ACLUrlPathStrategy(ACLUrlPathStrategy const &);
62e76326 28
29private:
5dee515e 30 static ACLUrlPathStrategy Instance_;
26ac0430 31 ACLUrlPathStrategy() {}
62e76326 32
5dee515e 33 ACLUrlPathStrategy&operator=(ACLUrlPathStrategy const &);
34};
35
62e76326 36class ACLUrlPath
37{
38
39public:
5dee515e 40 static ACL::Prototype RegistryProtoype;
41 static ACL::Prototype LegacyRegistryProtoype;
42 static ACLStrategised<char const *> RegistryEntry_;
43};
44
45#endif /* SQUID_ACLURLPATH_H */
f53969cc 46