#include <MasterXaction.h>

Inheritance diagram for MasterXaction:
Collaboration diagram for MasterXaction:

Public Types

typedef RefCount< MasterXactionPointer

Public Member Functions

 MasterXaction (const XactionInitiator anInitiator)

Public Attributes

InstanceId< MasterXaction, uint64_t > id
 transaction ID. More...
AnyP::PortCfgPointer squidPort
 the listening port which originated this transaction More...
Comm::ConnectionPointer tcpClient
 the client TCP connection which originated this transaction More...
XactionInitiator initiator
 the initiator of this transaction More...
bool generatingConnect = false
 whether we are currently creating a CONNECT header (to be sent to peer) More...

Detailed Description

Master transaction details.

Aggregates historical data from individual related protocol-specific transactions such as an HTTP client transaction and the corresponding HTTP or FTP server transaction.

Individual transaction information worth sending or logging should be recorded here, ideally without exposing other master transaction users to internal details of individual transactions. For example, storing an HTTP client IP address is a good idea but storing a pointer to some client-side job which maintains that address is not.

A master transaction is created by a newly accepted client connection, a new request on the existing client connection, or an internal request generated by Squid. All client-side protocols, including HTTP, HTCP, ICP, and SNMP will eventually create master transactions.

A master transaction is auto-destroyed when its last user is gone.

Definition at line 39 of file MasterXaction.h.

Member Typedef Documentation

◆ Pointer

Definition at line 42 of file MasterXaction.h.

Constructor & Destructor Documentation

◆ MasterXaction()

MasterXaction::MasterXaction ( const XactionInitiator  anInitiator)

Definition at line 44 of file MasterXaction.h.

Member Data Documentation

◆ generatingConnect

bool MasterXaction::generatingConnect = false

Definition at line 59 of file MasterXaction.h.

Referenced by ACLAtStepStrategy::match().

◆ id

InstanceId<MasterXaction, uint64_t> MasterXaction::id

Definition at line 47 of file MasterXaction.h.

Referenced by Format::Format::assemble(), and CommAcceptCbParams::print().

◆ initiator

XactionInitiator MasterXaction::initiator

Definition at line 56 of file MasterXaction.h.

Referenced by Acl::TransactionInitiator::match().

◆ squidPort

AnyP::PortCfgPointer MasterXaction::squidPort

Definition at line 50 of file MasterXaction.h.

Referenced by Ftp::Server::AcceptCtrlConnection(), and Comm::TcpAcceptor::notify().

◆ tcpClient

The documentation for this class was generated from the following file:






Web Site Translations