19 #ifndef SRC_XRDCL_XRDCLASYNCMSGWRITER_HH_
20 #define SRC_XRDCL_XRDCLASYNCMSGWRITER_HH_
94 std::pair<Message *, MsgHandler *> toBeSent;
108 if( !st.
IsOK() )
return st;
const char * XrdSysE2T(int errcode)
Definition: XrdClAnyObject.hh:33
Utility class encapsulating writing request logic.
Definition: XrdClAsyncMsgWriter.hh:38
uint16_t substrmnb
Definition: XrdClAsyncMsgWriter.hh:227
AnyObject & chdata
Definition: XrdClAsyncMsgWriter.hh:228
std::unique_ptr< Message > outsign
Definition: XrdClAsyncMsgWriter.hh:236
Stream & strm
Definition: XrdClAsyncMsgWriter.hh:226
MsgHandler * outhandler
Definition: XrdClAsyncMsgWriter.hh:235
Message * outmsg
Definition: XrdClAsyncMsgWriter.hh:233
Stage writestage
Definition: XrdClAsyncMsgWriter.hh:218
XRootDStatus Write()
Write the request into the socket.
Definition: XrdClAsyncMsgWriter.hh:82
TransportHandler & xrdTransport
Definition: XrdClAsyncMsgWriter.hh:223
Socket & socket
Definition: XrdClAsyncMsgWriter.hh:224
const std::string & strmname
Definition: XrdClAsyncMsgWriter.hh:225
Stage
Stages of reading out a response from the socket.
Definition: XrdClAsyncMsgWriter.hh:207
@ WriteStart
Definition: XrdClAsyncMsgWriter.hh:208
@ WriteRawData
Definition: XrdClAsyncMsgWriter.hh:211
@ WriteSign
Definition: XrdClAsyncMsgWriter.hh:209
@ WriteDone
Definition: XrdClAsyncMsgWriter.hh:212
@ WriteRequest
Definition: XrdClAsyncMsgWriter.hh:210
AsyncMsgWriter(TransportHandler &xrdTransport, Socket &socket, const std::string &strmname, Stream &strm, uint16_t substrmnb, AnyObject &chdata)
Definition: XrdClAsyncMsgWriter.hh:49
uint32_t outmsgsize
Definition: XrdClAsyncMsgWriter.hh:234
void Reset()
Reset the state of the object (makes it ready to read out next msg)
Definition: XrdClAsyncMsgWriter.hh:70
void SetCursor(uint32_t cursor)
Set the cursor.
Definition: XrdClBuffer.hh:148
uint32_t GetSize() const
Get the size of the message.
Definition: XrdClBuffer.hh:132
static Log * GetLog()
Get default log.
Handle diagnostics.
Definition: XrdClLog.hh:101
void Error(uint64_t topic, const char *format,...)
Report an error.
void Dump(uint64_t topic, const char *format,...)
Print a dump message.
The message representation used throughout the system.
Definition: XrdClMessage.hh:30
const std::string & GetDescription() const
Get the description of the message.
Definition: XrdClMessage.hh:95
Message handler.
Definition: XrdClPostMasterInterfaces.hh:51
virtual XRootDStatus WriteMessageBody(Socket *socket, uint32_t &bytesWritten)
Definition: XrdClPostMasterInterfaces.hh:196
virtual bool IsRaw() const
Definition: XrdClPostMasterInterfaces.hh:184
A network socket.
Definition: XrdClSocket.hh:43
XRootDStatus Send(const char *buffer, size_t size, int &bytesWritten)
Stream.
Definition: XrdClStream.hh:50
std::pair< Message *, MsgHandler * > OnReadyToWrite(uint16_t subStream)
void OnMessageSent(uint16_t subStream, Message *msg, uint32_t bytesSent)
Perform the handshake and the authentication for each physical stream.
Definition: XrdClPostMasterInterfaces.hh:290
virtual Status GetSignature(Message *toSign, Message *&sign, AnyObject &channelData)=0
Get signature for given message.
Request status.
Definition: XrdClXRootDResponses.hh:219
Definition: XrdClAnyObject.hh:26
const uint16_t suRetry
Definition: XrdClStatus.hh:40
const uint16_t stOK
Everything went OK.
Definition: XrdClStatus.hh:31
const uint64_t AsyncSockMsg
Definition: XrdClConstants.hh:41
const uint16_t suAlreadyDone
Definition: XrdClStatus.hh:42
uint16_t code
Error type, or additional hints on what to do.
Definition: XrdClStatus.hh:146
bool IsOK() const
We're fine.
Definition: XrdClStatus.hh:123
uint32_t errNo
Errno, if any.
Definition: XrdClStatus.hh:147