XrdCl::AsyncSocketHandler Class Reference

#include <XrdClAsyncSocketHandler.hh>

Inheritance diagram for XrdCl::AsyncSocketHandler:
Inheritance graph
[legend]
Collaboration diagram for XrdCl::AsyncSocketHandler:
Collaboration graph
[legend]

List of all members.

Classes

class  WaitTask

Public Member Functions

 AsyncSocketHandler (const URL &url, Poller *poller, TransportHandler *transport, AnyObject *channelData, uint16_t subStreamNum)
 Constructor.
 ~AsyncSocketHandler ()
 Destructor.
void SetAddress (const XrdNetAddr &address)
 Set address.
const XrdNetAddrGetAddress () const
 Get the address that the socket is connected to.
XRootDStatus Connect (time_t timeout)
 Connect to the currently set address.
XRootDStatus Close ()
 Close the connection.
void SetStream (Stream *stream)
 Set a stream object to be notified about the status of the operations.
virtual void Event (uint8_t type, XrdCl::Socket *)
 Handle a socket event.
XRootDStatus EnableUplink ()
 Enable uplink.
XRootDStatus DisableUplink ()
 Disable uplink.
const std::string & GetStreamName ()
 Get stream name.
time_t GetLastActivity ()
 Get timestamp of last registered socket activity.

Protected Member Functions

virtual void OnConnectionReturn ()
void OnWrite ()
void OnWriteWhileHandshaking ()
XRootDStatus WriteMessageAndRaw (Message *toWrite, Message *&sign)
XRootDStatus WriteCurrentMessage (Message *toWrite)
void OnRead ()
void OnReadWhileHandshaking ()
void HandleHandShake ()
void HandShakeNextStep (bool done)
XRootDStatus ReadMessage (Message *&toRead)
void OnFault (XRootDStatus st)
void OnFaultWhileHandshaking (XRootDStatus st)
void OnWriteTimeout ()
void OnReadTimeout ()
void OnTimeoutWhileHandshaking ()
XRootDStatus DoTlsHandShake ()
void OnTLSHandShake ()
void RetryHSMsg (Message *msg)
kXR_int32 HandleWaitRsp (Message *rsp)

Protected Attributes

PollerpPoller
TransportHandlerpTransport
AnyObjectpChannelData
uint16_t pSubStreamNum
StreampStream
std::string pStreamName
SocketpSocket
MessagepIncoming
MessagepHSIncoming
MessagepOutgoing
MessagepSignature
MessagepHSOutgoing
XrdNetAddr pSockAddr
HandShakeDatapHandShakeData
bool pHandShakeDone
uint16_t pTimeoutResolution
time_t pConnectionStarted
time_t pConnectionTimeout
bool pHeaderDone
std::pair< IncomingMsgHandler
*, bool > 
pIncHandler
bool pOutMsgDone
OutgoingMsgHandlerpOutHandler
uint32_t pIncMsgSize
uint32_t pOutMsgSize
time_t pLastActivity
URL pUrl
bool pTlsHandShakeOngoing

Detailed Description

Utility class handling asynchronous socket interactions and forwarding events to the parent stream.


Constructor & Destructor Documentation

XrdCl::AsyncSocketHandler::AsyncSocketHandler ( const URL url,
Poller poller,
TransportHandler transport,
AnyObject channelData,
uint16_t  subStreamNum 
)

Constructor.

XrdCl::AsyncSocketHandler::~AsyncSocketHandler (  ) 

Destructor.


Member Function Documentation

XRootDStatus XrdCl::AsyncSocketHandler::Close (  ) 

Close the connection.

XRootDStatus XrdCl::AsyncSocketHandler::Connect ( time_t  timeout  ) 

Connect to the currently set address.

XRootDStatus XrdCl::AsyncSocketHandler::DisableUplink (  )  [inline]
XRootDStatus XrdCl::AsyncSocketHandler::DoTlsHandShake (  )  [protected]
XRootDStatus XrdCl::AsyncSocketHandler::EnableUplink (  )  [inline]
virtual void XrdCl::AsyncSocketHandler::Event ( uint8_t  type,
XrdCl::Socket  
) [virtual]

Handle a socket event.

Implements XrdCl::SocketHandler.

const XrdNetAddr& XrdCl::AsyncSocketHandler::GetAddress (  )  const [inline]

Get the address that the socket is connected to.

References pSockAddr.

time_t XrdCl::AsyncSocketHandler::GetLastActivity (  )  [inline]

Get timestamp of last registered socket activity.

References pLastActivity.

const std::string& XrdCl::AsyncSocketHandler::GetStreamName (  )  [inline]

Get stream name.

References pStreamName.

void XrdCl::AsyncSocketHandler::HandleHandShake (  )  [protected]
kXR_int32 XrdCl::AsyncSocketHandler::HandleWaitRsp ( Message rsp  )  [inline, protected]
void XrdCl::AsyncSocketHandler::HandShakeNextStep ( bool  done  )  [protected]
virtual void XrdCl::AsyncSocketHandler::OnConnectionReturn (  )  [protected, virtual]
void XrdCl::AsyncSocketHandler::OnFault ( XRootDStatus  st  )  [protected]
void XrdCl::AsyncSocketHandler::OnFaultWhileHandshaking ( XRootDStatus  st  )  [protected]
void XrdCl::AsyncSocketHandler::OnRead (  )  [protected]
void XrdCl::AsyncSocketHandler::OnReadTimeout (  )  [protected]
void XrdCl::AsyncSocketHandler::OnReadWhileHandshaking (  )  [protected]
void XrdCl::AsyncSocketHandler::OnTimeoutWhileHandshaking (  )  [protected]
void XrdCl::AsyncSocketHandler::OnTLSHandShake (  )  [protected]
void XrdCl::AsyncSocketHandler::OnWrite (  )  [protected]
void XrdCl::AsyncSocketHandler::OnWriteTimeout (  )  [protected]
void XrdCl::AsyncSocketHandler::OnWriteWhileHandshaking (  )  [protected]
XRootDStatus XrdCl::AsyncSocketHandler::ReadMessage ( Message *&  toRead  )  [protected]
void XrdCl::AsyncSocketHandler::RetryHSMsg ( Message msg  )  [protected]
void XrdCl::AsyncSocketHandler::SetAddress ( const XrdNetAddr address  )  [inline]

Set address.

References pSockAddr.

void XrdCl::AsyncSocketHandler::SetStream ( Stream stream  ) 

Set a stream object to be notified about the status of the operations.

XRootDStatus XrdCl::AsyncSocketHandler::WriteCurrentMessage ( Message toWrite  )  [protected]
XRootDStatus XrdCl::AsyncSocketHandler::WriteMessageAndRaw ( Message toWrite,
Message *&  sign 
) [protected]

Member Data Documentation

Referenced by GetLastActivity().

Referenced by DisableUplink(), and EnableUplink().

Referenced by GetAddress(), and SetAddress().

Referenced by DisableUplink(), and EnableUplink().

std::string XrdCl::AsyncSocketHandler::pStreamName [protected]

Referenced by GetStreamName().

Referenced by EnableUplink().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 7 Jul 2020 for xrootd by  doxygen 1.6.1