46 references to WaitBehavior
Aspire.Hosting (33)
ApplicationModel\ResourceNotificationService.cs (19)
34internal WaitBehavior DefaultWaitBehavior { get; set; } 55DefaultWaitBehavior = WaitBehavior.StopOnResourceUnavailable; 74DefaultWaitBehavior = serviceProvider.GetService<IOptions<ResourceNotificationServiceOptions>>()?.Value.DefaultWaitBehavior ?? WaitBehavior.StopOnResourceUnavailable; 144private async Task WaitUntilHealthyAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 182/// control this behavior use <see cref="WaitForResourceHealthyAsync(string, WaitBehavior, CancellationToken)"/> 206/// <see cref="WaitBehavior"/> controls how the wait operation behaves when the resource 210/// When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified the wait operation 214/// When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified the wait operation 219public async Task<ResourceEvent> WaitForResourceHealthyAsync(string resourceName, WaitBehavior waitBehavior, CancellationToken cancellationToken = default) 242static bool ShouldYield(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 245WaitBehavior.WaitOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy, 246WaitBehavior.StopOnResourceUnavailable => snapshot.HealthStatus == HealthStatus.Healthy || 310private async Task WaitUntilStateAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, 333if (waitBehavior == WaitBehavior.StopOnResourceUnavailable) 363static bool IsContinuableState(WaitBehavior waitBehavior, CustomResourceSnapshot snapshot) => 366WaitBehavior.WaitOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running, 367WaitBehavior.StopOnResourceUnavailable => snapshot.State?.Text == KnownResourceStates.Running || 377private async Task WaitUntilStartedAsync(IResource resource, IResource dependency, WaitBehavior waitBehavior, CancellationToken cancellationToken) 899public WaitBehavior DefaultWaitBehavior { get; set; }
ApplicationModel\WaitAnnotation.cs (1)
33public WaitBehavior? WaitBehavior { get; init; }
Backchannel\AppHostRpcTarget.cs (1)
128WaitBehavior.StopOnResourceUnavailable,
DistributedApplicationBuilder.cs (2)
322o.DefaultWaitBehavior = options.DisableDashboard ? WaitBehavior.StopOnResourceUnavailable : WaitBehavior.WaitOnResourceUnavailable;
ResourceBuilderExtensions.cs (10)
1413/// resources, calling <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/> also results 1419/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1422/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1435public static IResourceBuilder<T> WaitFor<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1443private static IResourceBuilder<T> WaitForCore<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior? waitBehavior, bool addRelationship) where T : IResourceWithWaitSupport 1519/// <para>Unlike <see cref="WaitFor{T}(IResourceBuilder{T}, IResourceBuilder{IResource}, WaitBehavior)"/>, this method 1523/// wait operation. When <see cref="WaitBehavior.WaitOnResourceUnavailable"/> is specified, the wait 1526/// <para>When <see cref="WaitBehavior.StopOnResourceUnavailable"/> is specified, the wait operation 1539public static IResourceBuilder<T> WaitForStart<T>(this IResourceBuilder<T> builder, IResourceBuilder<IResource> dependency, WaitBehavior waitBehavior) where T : IResourceWithWaitSupport 1547private 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)
208.WaitFor(dependency, WaitBehavior.StopOnResourceUnavailable); 238dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 246WaitBehavior.StopOnResourceUnavailable 262dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 270WaitBehavior.WaitOnResourceUnavailable 279[InlineData(WaitBehavior.WaitOnResourceUnavailable, typeof(TimeoutException), "The operation has timed out.")] 280[InlineData(WaitBehavior.StopOnResourceUnavailable, typeof(DistributedApplicationException), "Stopped waiting for resource 'redis' to become healthy because it failed to start.")] 281public async Task WhenWaitBehaviorIsMissingWaitForResourceHealthyAsyncShouldUseDefaultWaitBehavior(WaitBehavior defaultWaitBehavior, Type exceptionType, string exceptionMessage) 293dependency.WaitFor(failToStart, WaitBehavior.StopOnResourceUnavailable); 353.WaitFor(dependency, WaitBehavior.WaitOnResourceUnavailable); 394o.DefaultWaitBehavior = WaitBehavior.WaitOnResourceUnavailable; 823.WaitForStart(dependency, WaitBehavior.StopOnResourceUnavailable); 830Assert.Equal(WaitBehavior.StopOnResourceUnavailable, waitAnnotation.WaitBehavior);