46 references to WaitBehavior
Aspire.Hosting (33)
ApplicationModel\ResourceNotificationService.cs (19)
33internal WaitBehavior DefaultWaitBehavior { get; set; } 54DefaultWaitBehavior = WaitBehavior.StopOnResourceUnavailable; 73DefaultWaitBehavior = serviceProvider.GetService<IOptions<ResourceNotificationServiceOptions>>()?.Value.DefaultWaitBehavior ?? WaitBehavior.StopOnResourceUnavailable; 143private async Task WaitUntilHealthyAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 181/// control this behavior use <see cref="WaitForResourceHealthyAsync(string, WaitBehavior, CancellationToken)"/> 205/// <see cref="WaitBehavior"/> controls how the wait operation behaves when the resource 209/// When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified the wait operation 213/// When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified the wait operation 218public async Task<ResourceEvent> WaitForResourceHealthyAsync(string resourceName, WaitBehavior waitBehavior, CancellationToken cancellationToken = default) 234static bool ShouldYield(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 237WaitBehavior.WaitOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy, 238WaitBehavior.StopOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy || 302private async Task WaitUntilStateAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, 325if (waitBehavior == WaitBehavior.StopOnResourceUnavailable) 355static bool IsContinuableState(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 358WaitBehavior.WaitOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running, 359WaitBehavior.StopOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running || 369private async Task WaitUntilStartedAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 885public WaitBehavior DefaultWaitBehavior { get; set; }
ApplicationModel\WaitAnnotation.cs (1)
33public WaitBehavior? WaitBehavior { get; init; }
Backchannel\AppHostRpcTarget.cs (1)
128WaitBehavior.StopOnResourceUnavailable,
DistributedApplicationBuilder.cs (2)
259o.DefaultWaitBehavior = options.DisableDashboard ? WaitBehavior.StopOnResourceUnavailable : WaitBehavior.WaitOnResourceUnavailable;
ResourceBuilderExtensions.cs (10)
1152/// resources, calling <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/> also results 1158/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1161/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1174public static IResourceBuilder<T> WaitFor<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1182private static IResourceBuilder<T> WaitForCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport 1258/// <para>Unlike <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/>, this method 1262/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1265/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1278public static IResourceBuilder<T> WaitForStart<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1286private static IResourceBuilder<T> WaitForStartCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport
Aspire.Hosting.Tests (13)
WaitForTests.cs (13)
207.WaitFor(dependency, WaitBehavior.StopOnResourceUnavailable); 237dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 245WaitBehavior.StopOnResourceUnavailable 261dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 269WaitBehavior.WaitOnResourceUnavailable 278[InlineData(WaitBehavior.WaitOnResourceUnavailable, typeof(TimeoutException), "The operation has timed out.")] 279[InlineData(WaitBehavior.StopOnResourceUnavailable, typeof(DistributedApplicationException), "Stopped waiting for resource 'redis' to become healthy because it failed to start.")] 280public async Task WhenWaitBehaviorIsMissingWaitForResourceHealthyAsyncShouldUseDefaultWaitBehavior(WaitBehavior defaultWaitBehavior, Type exceptionType, string exceptionMessage) 292dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 352.WaitFor(dependency, WaitBehavior.WaitOnResourceUnavailable); 393o.DefaultWaitBehavior = WaitBehavior.WaitOnResourceUnavailable; 822.WaitForStart(dependency, WaitBehavior.StopOnResourceUnavailable); 829Assert.Equal(WaitBehavior.StopOnResourceUnavailable, waitAnnotation.WaitBehavior);