Squid Web Cache master
Loading...
Searching...
No Matches
Initiator.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 93 ICAP (RFC 3507) Client */
10
11#include "squid.h"
12#include "adaptation/Initiate.h"
14#include "base/AsyncJobCalls.h"
15
16void
21
24{
26 x->initiator(this);
27 Start(x);
28 return i;
29}
30
31void
36
37void
39{
40 CallJobHere(93, 5, x, Initiate, noteInitiatorAborted);
41 clearAdaptation(x);
42}
43
#define CallJobHere(debugSection, debugLevel, job, Class, method)
#define Must(condition)
void initiator(const CbcPointer< Initiator > &i)
sets initiator
Definition Initiate.cc:54
CbcPointer< Initiate > initiateAdaptation(Initiate *x)
< starts freshly created initiate and returns a safe pointer to it
Definition Initiator.cc:23
virtual void noteAdaptationAclCheckDone(Adaptation::ServiceGroupPointer group)
Definition Initiator.cc:17
void clearAdaptation(CbcPointer< Initiate > &x)
clears the pointer (does not call announceInitiatorAbort)
Definition Initiator.cc:32
void announceInitiatorAbort(CbcPointer< Initiate > &x)
inform the transaction about abnormal termination and clear the pointer
Definition Initiator.cc:38
void clear()
make pointer not set; does not invalidate cbdata
Definition CbcPointer.h:144