Squid Web Cache master
Loading...
Searching...
No Matches
Filler.cc
Go to the documentation of this file.
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
20
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
30void
32{
33 debugs(16, 5, MYNAME);
34 Must(requestId != 0);
35 Must(action != nullptr);
36
38 action->run(entry, false);
39}
40
41void
43{
44 debugs(16, 5, MYNAME);
45 action->sendResponse(requestId);
47}
48
#define Must(condition)
#define CBDATA_NAMESPACED_CLASS_INIT(namespace, type)
Definition cbdata.h:333
void start() override
called by AsyncStart; do not call directly
Definition Filler.cc:31
Action::Pointer action
action that will run() and sendResponse()
Definition Filler.h:36
void swanSong() override
Definition Filler.cc:42
Filler(const Action::Pointer &, const Comm::ConnectionPointer &, Ipc::RequestId)
Definition Filler.cc:21
void start() override
called by AsyncStart; do not call directly
#define MYNAME
Definition Stream.h:219
#define debugs(SECTION, LEVEL, CONTENT)
Definition Stream.h:192
Cache Manager API.
Definition Action.h:21