Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
Waher.Networking.XMPP.BOSH.HttpBinding Class Reference

Implements a HTTP Binding mechanism based on BOSH. More...

Inheritance diagram for Waher.Networking.XMPP.BOSH.HttpBinding:
Waher.Networking.XMPP.AlternativeTransport Waher.Networking.XMPP.AlternativeTransport Waher.Networking.XMPP.IAlternativeTransport Waher.Networking.XMPP.IAlternativeTransport Waher.Networking.XMPP.IAlternativeTransport Waher.Networking.XMPP.IAlternativeTransport Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer Waher.Runtime.Inventory.IProcessingSupport< Uri > Waher.Networking.ITextTransportLayer

Public Member Functions

 HttpBinding ()
 Implements a HTTP Binding mechanism based on BOSH. More...
 
override Grade Supports (Uri URI)
 How well the alternative transport handles the XMPP credentials provided. More...
 
override IAlternativeTransport Instantiate (Uri URI, XmppClient Client, XmppBindingInterface BindingInterface)
 Instantiates a new alternative connections. More...
 
override void Dispose ()
 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. More...
 
override async void CreateSession ()
 Creates a BOSH session. More...
 
override void CloseSession ()
 Closes a session. More...
 
override Task< bool > SendAsync (string Packet)
 Sends a text packet. More...
 
override async Task< bool > SendAsync (string Packet, EventHandlerAsync< DeliveryEventArgs > DeliveryCallback, object State)
 Sends a text packet. More...
 
override void Continue ()
 Continues a paused connection. More...
 
 HttpBinding ()
 Implements a HTTP Binding mechanism based on BOSH. More...
 
override Grade Supports (Uri URI)
 How well the alternative transport handles the XMPP credentials provided. More...
 
override IAlternativeTransport Instantiate (Uri URI, XmppClient Client, XmppBindingInterface BindingInterface)
 Instantiates a new alternative connections. More...
 
override void Dispose ()
 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. More...
 
override async void CreateSession ()
 Creates a BOSH session. More...
 
override void CloseSession ()
 Closes a session. More...
 
override Task< bool > SendAsync (string Packet)
 Sends a text packet. More...
 
override async Task< bool > SendAsync (string Packet, EventHandlerAsync< DeliveryEventArgs > DeliveryCallback, object State)
 Sends a text packet. More...
 
override void Continue ()
 Continues a paused connection. More...
 
Grade Supports (T Object)
 If the interface understands objects such as Object . More...
 

Static Public Attributes

const string HttpBindNamespace = "http://jabber.org/protocol/httpbind"
 http://jabber.org/protocol/httpbind More...
 
const string BoshNamespace = "urn:xmpp:xbosh"
 urn:xmpp:xbosh More...
 

Properties

override bool HandlesHeartbeats [get]
 If the alternative binding mechanism handles heartbeats. More...
 
bool RestartLogic [get]
 Connection manager supports stream restart logic. More...
 
override bool Paused [get]
 If reading has been paused. More...
 

Events

override TextEventHandler OnSent
 Event raised when a packet has been sent. More...
 
override TextEventHandler OnReceived
 Event received when text data has been received. More...
 

Detailed Description

Implements a HTTP Binding mechanism based on BOSH.

XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH): https://xmpp.org/extensions/xep-0124.html

XEP-0206: XMPP Over BOSH: https://xmpp.org/extensions/xep-0206.html

Definition at line 30 of file HttpBinding.cs.

Constructor & Destructor Documentation

◆ HttpBinding() [1/2]

Waher.Networking.XMPP.BOSH.HttpBinding.HttpBinding ( )

Implements a HTTP Binding mechanism based on BOSH.

Definition at line 76 of file HttpBinding.cs.

◆ HttpBinding() [2/2]

Waher.Networking.XMPP.BOSH.HttpBinding.HttpBinding ( )

Implements a HTTP Binding mechanism based on BOSH.

Definition at line 76 of file HttpBinding.cs.

Member Function Documentation

◆ CloseSession() [1/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.CloseSession ( )
virtual

Closes a session.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 452 of file HttpBinding.cs.

◆ CloseSession() [2/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.CloseSession ( )
virtual

Closes a session.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 452 of file HttpBinding.cs.

◆ Continue() [1/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.Continue ( )
virtual

Continues a paused connection.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 890 of file HttpBinding.cs.

◆ Continue() [2/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.Continue ( )
virtual

Continues a paused connection.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 890 of file HttpBinding.cs.

◆ CreateSession() [1/2]

override async void Waher.Networking.XMPP.BOSH.HttpBinding.CreateSession ( )
virtual

Creates a BOSH session.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 210 of file HttpBinding.cs.

◆ CreateSession() [2/2]

override async void Waher.Networking.XMPP.BOSH.HttpBinding.CreateSession ( )
virtual

Creates a BOSH session.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 210 of file HttpBinding.cs.

◆ Dispose() [1/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.Dispose ( )
virtual

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 152 of file HttpBinding.cs.

◆ Dispose() [2/2]

override void Waher.Networking.XMPP.BOSH.HttpBinding.Dispose ( )
virtual

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 152 of file HttpBinding.cs.

◆ Instantiate() [1/2]

override IAlternativeTransport Waher.Networking.XMPP.BOSH.HttpBinding.Instantiate ( Uri  URI,
XmppClient  Client,
XmppBindingInterface  BindingInterface 
)
virtual

Instantiates a new alternative connections.

Parameters
URIURI defining endpoint.
ClientXMPP Client
BindingInterfaceInteface to internal properties of the XmppClient.
Returns
Instantiated binding.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 110 of file HttpBinding.cs.

◆ Instantiate() [2/2]

override IAlternativeTransport Waher.Networking.XMPP.BOSH.HttpBinding.Instantiate ( Uri  URI,
XmppClient  Client,
XmppBindingInterface  BindingInterface 
)
virtual

Instantiates a new alternative connections.

Parameters
URIURI defining endpoint.
ClientXMPP Client
BindingInterfaceInteface to internal properties of the XmppClient.
Returns
Instantiated binding.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 110 of file HttpBinding.cs.

◆ SendAsync() [1/4]

override Task< bool > Waher.Networking.XMPP.BOSH.HttpBinding.SendAsync ( string  Packet)
virtual

Sends a text packet.

Parameters
PacketText packet.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 492 of file HttpBinding.cs.

◆ SendAsync() [2/4]

override Task< bool > Waher.Networking.XMPP.BOSH.HttpBinding.SendAsync ( string  Packet)
virtual

Sends a text packet.

Parameters
PacketText packet.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 492 of file HttpBinding.cs.

◆ SendAsync() [3/4]

override async Task< bool > Waher.Networking.XMPP.BOSH.HttpBinding.SendAsync ( string  Packet,
EventHandlerAsync< DeliveryEventArgs DeliveryCallback,
object  State 
)
virtual

Sends a text packet.

Parameters
PacketText packet.
DeliveryCallbackOptional method to call when packet has been delivered.
StateState object to pass on to callback method.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 503 of file HttpBinding.cs.

◆ SendAsync() [4/4]

override async Task< bool > Waher.Networking.XMPP.BOSH.HttpBinding.SendAsync ( string  Packet,
EventHandlerAsync< DeliveryEventArgs DeliveryCallback,
object  State 
)
virtual

Sends a text packet.

Parameters
PacketText packet.
DeliveryCallbackOptional method to call when packet has been delivered.
StateState object to pass on to callback method.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 503 of file HttpBinding.cs.

◆ Supports() [1/3]

Grade Waher.Runtime.Inventory.IProcessingSupport< T >.Supports ( Object)
inherited

If the interface understands objects such as Object .

Parameters
ObjectObject
Returns
How well objects of this type are supported.

◆ Supports() [2/3]

override Grade Waher.Networking.XMPP.BOSH.HttpBinding.Supports ( Uri  URI)
virtual

How well the alternative transport handles the XMPP credentials provided.

Parameters
URIURI defining endpoint.
Returns
Support grade.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 90 of file HttpBinding.cs.

◆ Supports() [3/3]

override Grade Waher.Networking.XMPP.BOSH.HttpBinding.Supports ( Uri  URI)
virtual

How well the alternative transport handles the XMPP credentials provided.

Parameters
URIURI defining endpoint.
Returns
Support grade.

Implements Waher.Networking.XMPP.AlternativeTransport.

Definition at line 90 of file HttpBinding.cs.

Member Data Documentation

◆ BoshNamespace

const string Waher.Networking.XMPP.BOSH.HttpBinding.BoshNamespace = "urn:xmpp:xbosh"
static

urn:xmpp:xbosh

Definition at line 40 of file HttpBinding.cs.

◆ HttpBindNamespace

const string Waher.Networking.XMPP.BOSH.HttpBinding.HttpBindNamespace = "http://jabber.org/protocol/httpbind"
static

Property Documentation

◆ HandlesHeartbeats

override bool Waher.Networking.XMPP.BOSH.HttpBinding.HandlesHeartbeats
get

If the alternative binding mechanism handles heartbeats.

Implements Waher.Networking.XMPP.IAlternativeTransport.

Definition at line 83 of file HttpBinding.cs.

◆ Paused

override bool Waher.Networking.XMPP.BOSH.HttpBinding.Paused
get

If reading has been paused.

Implements Waher.Networking.ITextTransportLayer.

Definition at line 885 of file HttpBinding.cs.

◆ RestartLogic

bool Waher.Networking.XMPP.BOSH.HttpBinding.RestartLogic
get

Connection manager supports stream restart logic.

Definition at line 146 of file HttpBinding.cs.

Event Documentation

◆ OnReceived

override TextEventHandler Waher.Networking.XMPP.BOSH.HttpBinding.OnReceived

Event received when text data has been received.

Definition at line 141 of file HttpBinding.cs.

◆ OnSent

override TextEventHandler Waher.Networking.XMPP.BOSH.HttpBinding.OnSent

Event raised when a packet has been sent.

Definition at line 136 of file HttpBinding.cs.


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