]> git.ipfire.org Git - thirdparty/squid.git/blob - src/adaptation/ServiceFilter.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / adaptation / ServiceFilter.h
1 /*
2 * Copyright (C) 1996-2014 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_ADAPTATION__SERVICE_FILTER_H
10 #define SQUID_ADAPTATION__SERVICE_FILTER_H
11
12 #include "AccessLogEntry.h"
13 #include "adaptation/Elements.h"
14
15 class HttpRequest;
16 class HttpReply;
17
18 namespace Adaptation
19 {
20
21 /// information used to search for adaptation services
22 class ServiceFilter
23 {
24 public:
25 ServiceFilter(Method, VectPoint, HttpRequest *, HttpReply *, AccessLogEntry::Pointer const &al); // locks
26 ServiceFilter(const ServiceFilter &f);
27 ~ServiceFilter(); // unlocks
28
29 ServiceFilter &operator =(const ServiceFilter &f);
30
31 public:
32 Method method; ///< adaptation direction
33 VectPoint point; ///< adaptation location
34 HttpRequest *request; ///< HTTP request being adapted or cause; may be nil
35 HttpReply *reply; ///< HTTP response being adapted; may be nil
36 AccessLogEntry::Pointer al; ///< info for the future access.log entry
37 };
38
39 } // namespace Adaptation
40
41 #endif /* SQUID_ADAPTATION__SERVICE_FILTER_H */
42