]> git.ipfire.org Git - thirdparty/squid.git/blame - src/adaptation/ecap/Host.h
Author: Alex Rousskov <rousskov@measurement-factory.com>
[thirdparty/squid.git] / src / adaptation / ecap / Host.h
CommitLineData
fdc96a39
AR
1
2/*
3 * $Id$
4 */
5
6#ifndef SQUID_ECAP_HOST_H
7#define SQUID_ECAP_HOST_H
8
9#include <libecap/host/host.h>
10
008bb7a0
AJ
11namespace Adaptation {
12namespace Ecap {
fdc96a39
AR
13
14// Squid wrapper, providing host application functionality to eCAP services.
15class Host : public libecap::host::Host
16{
17public:
c2f1edbd 18 Host();
fdc96a39 19
c2f1edbd
AJ
20 // About
21 virtual std::string uri() const; // unique across all vendors
22 virtual void describe(std::ostream &os) const; // free-format info
fdc96a39 23
c2f1edbd
AJ
24 // Service management
25 virtual void noteService(const libecap::weak_ptr<libecap::adapter::Service> &s);
530f96dd 26
c2f1edbd
AJ
27 // Logging
28 virtual std::ostream *openDebug(libecap::LogVerbosity lv);
29 virtual void closeDebug(std::ostream *debug);
fdc96a39
AR
30};
31
530f96dd
AR
32extern const libecap::Name protocolInternal;
33extern const libecap::Name protocolCacheObj;
34extern const libecap::Name protocolIcp;
35#if USE_HTCP
36extern const libecap::Name protocolHtcp;
37#endif
38
fdc96a39 39} // namespace Ecap
008bb7a0 40} // namespace Adaptation
fdc96a39
AR
41
42#endif /* SQUID_ECAP_HOST_H */