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) 241static bool ShouldYield(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 244WaitBehavior.WaitOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy, 245WaitBehavior.StopOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy || 309private async Task WaitUntilStateAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, 332if (waitBehavior == WaitBehavior.StopOnResourceUnavailable) 362static bool IsContinuableState(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 365WaitBehavior.WaitOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running, 366WaitBehavior.StopOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running || 376private async Task WaitUntilStartedAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 892public WaitBehavior DefaultWaitBehavior { get; set; }
ApplicationModel\WaitAnnotation.cs (1)
33public WaitBehavior? WaitBehavior { get; init; }
Backchannel\AppHostRpcTarget.cs (1)
128WaitBehavior.StopOnResourceUnavailable,
DistributedApplicationBuilder.cs (2)
260o.DefaultWaitBehavior = options.DisableDashboard ? WaitBehavior.StopOnResourceUnavailable : WaitBehavior.WaitOnResourceUnavailable;
ResourceBuilderExtensions.cs (10)
1187/// resources, calling <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/> also results 1193/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1196/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1209public static IResourceBuilder<T> WaitFor<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1217private static IResourceBuilder<T> WaitForCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport 1293/// <para>Unlike <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/>, this method 1297/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1300/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1313public static IResourceBuilder<T> WaitForStart<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1321private 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);