]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * Copyright (C) 1996-2025 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 | /* DEBUG: section 16 Cache Manager API */ | |
10 | ||
11 | #include "squid.h" | |
12 | #include "base/TextException.h" | |
13 | #include "comm/Connection.h" | |
14 | #include "ipc/RequestId.h" | |
15 | #include "mgr/Filler.h" | |
16 | #include "mgr/Response.h" | |
17 | #include "Store.h" | |
18 | ||
19 | CBDATA_NAMESPACED_CLASS_INIT(Mgr, Filler); | |
20 | ||
21 | Mgr::Filler::Filler(const Action::Pointer &anAction, const Comm::ConnectionPointer &conn, | |
22 | const Ipc::RequestId aRequestId): | |
23 | StoreToCommWriter(conn, anAction->createStoreEntry()), | |
24 | action(anAction), | |
25 | requestId(aRequestId) | |
26 | { | |
27 | debugs(16, 5, conn << " action: " << action); | |
28 | } | |
29 | ||
30 | void | |
31 | Mgr::Filler::start() | |
32 | { | |
33 | debugs(16, 5, MYNAME); | |
34 | Must(requestId != 0); | |
35 | Must(action != nullptr); | |
36 | ||
37 | StoreToCommWriter::start(); | |
38 | action->run(entry, false); | |
39 | } | |
40 | ||
41 | void | |
42 | Mgr::Filler::swanSong() | |
43 | { | |
44 | debugs(16, 5, MYNAME); | |
45 | action->sendResponse(requestId); | |
46 | StoreToCommWriter::swanSong(); | |
47 | } | |
48 |