void TryToConnect() { if (MyState != State.Connecting) { return; } Safely(() => { Connect(); MyState = State.Connected; SyncContext.Current.Post(() => IsConnectedChanged.Fire(true)); AfterConnect(); }); }
void Heartbeat() { if (MyState == State.Disposed) { return; } HeartbeatCookie = PumpTimer.DoLater(1000, Heartbeat); if (Connection == null || !Connection.IsOpen) { MyState = State.Connecting; SyncContext.Current.Post(() => IsConnectedChanged.Fire(false)); TryToConnect(); } }
protected void ConnectionBroke() { CleanupRabbit(); MyState = State.Connecting; SyncContext.Current.Post(() => IsConnectedChanged.Fire(false)); }
public AsyncWorkQueueConsumer(WorkQueueInfo wq) { Consumer = new AsyncConsumer(new ConsumerInfo(wq.Host, wq.Name, true, wq.IsPersistent, 1), msg => Received.Fire(msg)); Consumer.IsConnectedChanged += x => IsConnectedChanged.Fire(x); }