public void SetupAzureServiceBusTestFixture() { _bus = CreateBus(); _bus.ConnectReceiveEndpointObserver(new ReceiveEndpointObserver()); _busHandle = _bus.Start(); try { _busSendEndpoint = _bus.GetSendEndpoint(_bus.Address).Result; _busSendEndpoint.ConnectSendObserver(_sendObserver); _inputQueueSendEndpoint = _bus.GetSendEndpoint(_inputQueueAddress).Result; _inputQueueSendEndpoint.ConnectSendObserver(_sendObserver); } catch (Exception) { try { using (var tokenSource = new CancellationTokenSource(TestTimeout)) { _bus.Stop(tokenSource.Token); } } finally { _busHandle = null; _bus = null; } throw; } }
public void SetupAzureServiceBusTestFixture() { _bus = CreateBus(); _bus.ConnectReceiveEndpointObserver(new ReceiveEndpointObserver()); _busHandle = _bus.Start(); try { Await(() => _busHandle.Ready); _busSendEndpoint = _bus.GetSendEndpoint(_bus.Address).Result; _busSendEndpoint.ConnectSendObserver(_sendObserver); _inputQueueSendEndpoint = _bus.GetSendEndpoint(_inputQueueAddress).Result; _inputQueueSendEndpoint.ConnectSendObserver(_sendObserver); } catch (Exception ex) { Console.WriteLine("The bus creation failed: {0}", ex); _busHandle.Stop(); throw; } }
public async Task StartAsync(CancellationToken cancellationToken) { _bus.ConnectReceiveEndpointObserver(_receiveEndpointCheck); await _bus.StartAsync(cancellationToken).ConfigureAwait(false); _simplifiedBusCheck?.ReportBusStarted(); }
public Task StartAsync(CancellationToken cancellationToken) { _bus.ConnectReceiveEndpointObserver(_receiveEndpointCheck); _startTask = _bus.StartAsync(cancellationToken); if (_startTask.IsCompleted) { if (_startTask.IsCompletedSuccessfully()) { _simplifiedBusCheck?.ReportBusStarted(); } return(_startTask); } if (_simplifiedBusCheck != null) { _startTask.ContinueWith(task => _simplifiedBusCheck?.ReportBusStarted(), TaskContinuationOptions.OnlyOnRanToCompletion); } return(TaskUtil.Completed); }
public ConnectHandle ConnectReceiveEndpointObserver(IReceiveEndpointObserver observer) { return(_busControl.ConnectReceiveEndpointObserver(observer)); }