Proton DotNet
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
Apache.Qpid.Proton.Client.Implementation.ClientSender Class Referencesealed

Sender implementation that send complete messages on a remote link. More...

Inheritance diagram for Apache.Qpid.Proton.Client.Implementation.ClientSender:
Apache.Qpid.Proton.Client.Implementation.ClientLinkType< ISender, Engine.ISender > Apache.Qpid.Proton.Client.ISender Apache.Qpid.Proton.Client.ILink< ISender >

Public Member Functions

ITracker Send< T > (IMessage< T > message, IDictionary< string, object > deliveryAnnotations=null)
 Send the given message immediately if there is credit available or blocks if the link has not yet been granted credit. If a send timeout has been configured then this method will throw a timed out error after that if the message cannot be sent.
 
ITracker TrySend< T > (IMessage< T > message, IDictionary< string, object > deliveryAnnotations=null)
 Send the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt.
 
Task< ITrackerSendAsync< T > (IMessage< T > message, IDictionary< string, object > deliveryAnnotations=null)
 Send the given message immediately if there is credit available or waits if the link has not yet been granted credit. If a send timeout has been configured then this method will fail the returned Task with a timed out error after that if the message cannot be sent. The returned Task will be completed once the message has been sent.
 
Task< ITrackerTrySendAsync< T > (IMessage< T > message, IDictionary< string, object > deliveryAnnotations=null)
 Send the given message if credit is available or completes the returned Task with null if no credit has been granted to the link at the time of the send attempt.
 
- Public Member Functions inherited from Apache.Qpid.Proton.Client.Implementation.ClientLinkType< ISender, Engine.ISender >
void Close (IErrorCondition error=null)
 
Task< LinkType > CloseAsync (IErrorCondition error=null)
 
void Detach (IErrorCondition error=null)
 
Task< LinkType > DetachAsync (IErrorCondition error=null)
 
void Dispose ()
 

Additional Inherited Members

- Protected Member Functions inherited from Apache.Qpid.Proton.Client.Implementation.ClientLinkType< ISender, Engine.ISender >
virtual Task< LinkType > DoCloseOrDetach (bool close, IErrorCondition error)
 
void CheckClosedOrFailed ()
 
void WaitForOpenToComplete ()
 
bool NotClosedOrFailed< T > (TaskCompletionSource< T > request)
 
bool NotClosedOrFailed< T > (TaskCompletionSource< T > request, ProtonLinkType sender)
 
- Protected Attributes inherited from Apache.Qpid.Proton.Client.Implementation.ClientLinkType< ISender, Engine.ISender >
readonly AtomicBoolean closed
 
readonly ClientSession session
 
ClientException failureCause
 
readonly TaskCompletionSource< LinkType > openFuture
 
readonly TaskCompletionSource< LinkType > closeFuture
 
volatile ISource remoteSource
 
volatile ITarget remoteTarget
 
ProtonLinkType protonLink
 
- Properties inherited from Apache.Qpid.Proton.Client.Implementation.ClientLinkType< ISender, Engine.ISender >
IClient Client [get]
 
IConnection Connection [get]
 
ISession Session [get]
 
Task< LinkType > OpenTask [get]
 
string Address [get]
 
ISource Source [get]
 
ITarget Target [get]
 
IReadOnlyDictionary< string, object > Properties [get]
 
IReadOnlyCollection< string > OfferedCapabilities [get]
 
IReadOnlyCollection< string > DesiredCapabilities [get]
 

Detailed Description

Sender implementation that send complete messages on a remote link.

Member Function Documentation

◆ Send< T >()

ITracker Apache.Qpid.Proton.Client.Implementation.ClientSender.Send< T > ( IMessage< T >  message,
IDictionary< string, object >  deliveryAnnotations = null 
)
inline

Send the given message immediately if there is credit available or blocks if the link has not yet been granted credit. If a send timeout has been configured then this method will throw a timed out error after that if the message cannot be sent.

Template Parameters
TThe type that describes the message body
Parameters
messageThe message object that will be sent
deliveryAnnotationsOptional delivery annotation to include with the message
Returns
A Tracker for the sent message

Implements Apache.Qpid.Proton.Client.ISender.

◆ SendAsync< T >()

Task< ITracker > Apache.Qpid.Proton.Client.Implementation.ClientSender.SendAsync< T > ( IMessage< T >  message,
IDictionary< string, object >  deliveryAnnotations = null 
)
inline

Send the given message immediately if there is credit available or waits if the link has not yet been granted credit. If a send timeout has been configured then this method will fail the returned Task with a timed out error after that if the message cannot be sent. The returned Task will be completed once the message has been sent.

Template Parameters
TThe type that describes the message body
Parameters
messageThe message object that will be sent
deliveryAnnotationsOptional delivery annotation to include with the message
Returns
A Task that is completed with a Tracker once the send completes

Implements Apache.Qpid.Proton.Client.ISender.

◆ TrySend< T >()

ITracker Apache.Qpid.Proton.Client.Implementation.ClientSender.TrySend< T > ( IMessage< T >  message,
IDictionary< string, object >  deliveryAnnotations = null 
)
inline

Send the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt.

Template Parameters
TThe type that describes the message body
Parameters
messageThe message object that will be sent
deliveryAnnotationsOptional delivery annotation to include with the message
Returns
A Tracker for the sent message or null if no credit to send is available

Implements Apache.Qpid.Proton.Client.ISender.

◆ TrySendAsync< T >()

Task< ITracker > Apache.Qpid.Proton.Client.Implementation.ClientSender.TrySendAsync< T > ( IMessage< T >  message,
IDictionary< string, object >  deliveryAnnotations = null 
)
inline

Send the given message if credit is available or completes the returned Task with null if no credit has been granted to the link at the time of the send attempt.

Template Parameters
TThe type that describes the message body
Parameters
messageThe message object that will be sent
deliveryAnnotationsOptional delivery annotation to include with the message
Returns
A Task that provides a tracker if the send completes or null if no credit

Implements Apache.Qpid.Proton.Client.ISender.


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