Return Futures from connect, disconnect, subscribe, unsubscribe - addresses #31
On initial connect fire DisconnectEvent on connection error - this makes behavior of centrifuge-dart similar to all other our clients - addresses #56
Add client error stream to consume ErrorEvent - each transport failure will emit error to this stream - addresses #56
Refactor subscription statuses - add subscribing and error statuses
Do not call UnsubscribeEvent if subscription not successfully subscribed (in subscribed state).
Update disconnect reasons due to failed connection and calling Client.Disconnect method - make it more similar to all other connector libraries in ecosystem
Improve/fix examples
Add default transport timeout (10 sec) – on connect and subscribe timeouts client will auto reconnect, calls like publish, history, rpc can now throw TimeoutException. Also - properly pass timeout to the transport (was not before!). Again – this makes client behave similarly to all other connectors.
Add presence and presenceStats methods for Subscription and on client top level (for server-side subs).
Support streamPosition in SubscribeSuccessEvent
Support streamPosition in ServerSubscribeEvent
Support data in ServerSubscribeEvent
Implement send method to send async messages to a server
Fix deletion during iteration over map when working with server-side subscriptions
Better event String representations
Trigger unsubscribe event when unsubscribe called in disconnected state.
Next iteration of improvements here:
subscribing
anderror
statusesUnsubscribeEvent
if subscription not successfully subscribed (insubscribed
state).TimeoutException
. Also - properly pass timeout to the transport (was not before!). Again – this makes client behave similarly to all other connectors.presence
andpresenceStats
methods for Subscription and on client top level (for server-side subs).streamPosition
inSubscribeSuccessEvent
streamPosition
inServerSubscribeEvent
data
inServerSubscribeEvent
send
method to send async messages to a server