Proton DotNet
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Apache.Qpid.Proton.Engine.IEngineHandler Interface Reference

Handler of engine events that is queued into the events pipeline. More...

Inheritance diagram for Apache.Qpid.Proton.Engine.IEngineHandler:
Apache.Qpid.Proton.Engine.Implementation.ProtonFrameDecodingHandler Apache.Qpid.Proton.Engine.Implementation.ProtonFrameEncodingHandler Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler Apache.Qpid.Proton.Engine.Implementation.ProtonPerformativeHandler Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler

Public Member Functions

void HandlerAdded (IEngineHandlerContext context)
 Called when the handler is successfully added to the engine pipeline and will later be initialized before use.
 
void HandlerRemoved (IEngineHandlerContext context)
 Called when the handler is successfully removed from the engine pipeline and will not be invoked again or ever.
 
void EngineStarting (IEngineHandlerContext context)
 Called when the engine is started to allow handlers to prepare for use based on the configuration state at start of the engine. A handler can fail the engine start by throwing an exception.
 
void HandleEngineStateChanged (IEngineHandlerContext context)
 Called when the engine state has changed and handlers may need to update their internal state to respond to the change or prompt some new work based on the change, e.g state changes from not writable to writable.
 
void EngineFailed (IEngineHandlerContext context, EngineFailedException failure)
 Called when the engine has transitioned to a failed state and cannot process any additional input or output. The handler can free and resources used for normal operations at this point as the engine is now considered shutdown.
 
void HandleRead (IEngineHandlerContext context, IProtonBuffer buffer)
 Handle the read of new incoming bytes from a remote sender. The handler should generally decode these bytes into an AMQP Performative or SASL Performative based on the current state of the connection and the handler in question.
 
void HandleRead (IEngineHandlerContext context, HeaderEnvelope envelope)
 Handle the receipt of an incoming AMQP Header or SASL Header based on the current state of this handler.
 
void HandleRead (IEngineHandlerContext context, SaslEnvelope envelope)
 Handle the receipt of an incoming SASL performative envelope based on the current state of this handler.
 
void HandleRead (IEngineHandlerContext context, IncomingAmqpEnvelope envelope)
 Handle the receipt of an incoming AMQP performative envelope based on the current state of this handler.
 
void HandleWrite (IEngineHandlerContext context, HeaderEnvelope envelope)
 Handles write of AMQP Header either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.
 
void HandleWrite (IEngineHandlerContext context, SaslEnvelope envelope)
 Handles write of SASL performative either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.
 
void HandleWrite (IEngineHandlerContext context, OutgoingAmqpEnvelope envelope)
 Handles write of AMQP performative either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.
 
void HandleWrite (IEngineHandlerContext context, IProtonBuffer buffer, Action ioComplete)
 

Detailed Description

Handler of engine events that is queued into the events pipeline.

Member Function Documentation

◆ EngineFailed()

void Apache.Qpid.Proton.Engine.IEngineHandler.EngineFailed ( IEngineHandlerContext  context,
EngineFailedException  failure 
)
inline

Called when the engine has transitioned to a failed state and cannot process any additional input or output. The handler can free and resources used for normal operations at this point as the engine is now considered shutdown.

Parameters
contextThe handler context that is assigned to this handler
failureThe exception that caused the engine to fail

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameDecodingHandler, and Apache.Qpid.Proton.Engine.Implementation.ProtonPerformativeHandler.

◆ EngineStarting()

void Apache.Qpid.Proton.Engine.IEngineHandler.EngineStarting ( IEngineHandlerContext  context)
inline

Called when the engine is started to allow handlers to prepare for use based on the configuration state at start of the engine. A handler can fail the engine start by throwing an exception.

Parameters
contextThe handler context that is assigned to this handler

Implemented in Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleEngineStateChanged()

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleEngineStateChanged ( IEngineHandlerContext  context)
inline

Called when the engine state has changed and handlers may need to update their internal state to respond to the change or prompt some new work based on the change, e.g state changes from not writable to writable.

Parameters
contextThe handler context that is assigned to this handler

◆ HandlerAdded()

void Apache.Qpid.Proton.Engine.IEngineHandler.HandlerAdded ( IEngineHandlerContext  context)
inline

◆ HandleRead() [1/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleRead ( IEngineHandlerContext  context,
HeaderEnvelope  envelope 
)
inline

Handle the receipt of an incoming AMQP Header or SASL Header based on the current state of this handler.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that was read

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonPerformativeHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleRead() [2/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleRead ( IEngineHandlerContext  context,
IncomingAmqpEnvelope  envelope 
)
inline

Handle the receipt of an incoming AMQP performative envelope based on the current state of this handler.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that was read

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonPerformativeHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleRead() [3/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleRead ( IEngineHandlerContext  context,
IProtonBuffer  buffer 
)
inline

Handle the read of new incoming bytes from a remote sender. The handler should generally decode these bytes into an AMQP Performative or SASL Performative based on the current state of the connection and the handler in question.

Parameters
contextThe handler context that is assigned to this handler
bufferThe buffer containing the incoming bytes read.

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameDecodingHandler.

◆ HandleRead() [4/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleRead ( IEngineHandlerContext  context,
SaslEnvelope  envelope 
)
inline

Handle the receipt of an incoming SASL performative envelope based on the current state of this handler.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that was read

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameDecodingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandlerRemoved()

void Apache.Qpid.Proton.Engine.IEngineHandler.HandlerRemoved ( IEngineHandlerContext  context)
inline

Called when the handler is successfully removed from the engine pipeline and will not be invoked again or ever.

Parameters
contextThe handler context that is assigned to this handler

Implemented in Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleWrite() [1/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleWrite ( IEngineHandlerContext  context,
HeaderEnvelope  envelope 
)
inline

Handles write of AMQP Header either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that is to be written

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameEncodingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleWrite() [2/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleWrite ( IEngineHandlerContext  context,
IProtonBuffer  buffer,
Action  ioComplete 
)
inline
Parameters
contextThe handler context that is assigned to this handler
bufferThe buffer to be written into the IO layer
ioCompleteThe delegate to invoke when the IO operation is complete

◆ HandleWrite() [3/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleWrite ( IEngineHandlerContext  context,
OutgoingAmqpEnvelope  envelope 
)
inline

Handles write of AMQP performative either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that is to be written

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameEncodingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.

◆ HandleWrite() [4/4]

void Apache.Qpid.Proton.Engine.IEngineHandler.HandleWrite ( IEngineHandlerContext  context,
SaslEnvelope  envelope 
)
inline

Handles write of SASL performative either by directly writing it to the output target or by converting it to bytes and firing a write using the buffer based write API.

Parameters
contextThe handler context that is assigned to this handler
envelopeThe envelope that is to be written

Implemented in Apache.Qpid.Proton.Engine.Implementation.ProtonFrameDecodingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonFrameEncodingHandler, Apache.Qpid.Proton.Engine.Implementation.ProtonFrameLoggingHandler, and Apache.Qpid.Proton.Engine.Implementation.Sasl.ProtonSaslHandler.


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