6 instantiations of ResourceEvent
Aspire.Hosting (4)
ApplicationModel\ResourceNotificationService.cs (4)
490resourceEvent = new ResourceEvent(state.Resource, resourceId, snapshot); 513resourceEvent = new ResourceEvent(m.Value.Resource, m.Key, m.Value.LastSnapshot); 551yield return new ResourceEvent(state.Value.Resource, resourceId, snapshot); 619OnResourceUpdated?.Invoke(new ResourceEvent(resource, resourceId, newState));
Aspire.Hosting.DevTunnels (1)
DevTunnelResourceBuilderExtensions.cs (1)
693await eventing.PublishAsync<ResourceStoppedEvent>(new(portResource, e.Services, new(portResource, portResource.Name, stoppedSnapshot!)), ct).ConfigureAwait(false);
Aspire.Hosting.Tests (1)
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
301var testResourceEvent = new ResourceEvent(resource.Resource, "test-resource", testSnapshot);
126 references to ResourceEvent
Aspire.Hosting (43)
ApplicationModel\ResourceCommandService.cs (1)
47if (!_resourceNotificationService.TryGetCurrentState(resourceId, out var resourceEvent))
ApplicationModel\ResourceNotificationService.cs (21)
31private Action<ResourceEvent>? OnResourceUpdated { get; set; } 130await foreach (var resourceEvent in WatchAsync(watchToken).ConfigureAwait(false)) 186public async Task<ResourceEvent> WaitForResourceHealthyAsync(string resourceName, CancellationToken cancellationToken = default) 219public async Task<ResourceEvent> WaitForResourceHealthyAsync(string resourceName, WaitBehavior waitBehavior, CancellationToken cancellationToken = default) 222var resourceEvent = await WaitForResourceCoreAsync(resourceName, re => ShouldYield(waitBehavior, re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false); 275var resourceEvent = await WaitForResourceCoreAsync(dependency.Name, re => re.ResourceId == resourceId && IsKnownTerminalState(re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false); 311Func<ILogger, string, string, ResourceEvent, Task> postRunningAction, CancellationToken cancellationToken) 330var resourceEvent = await WaitForResourceCoreAsync(dependency.Name, re => re.ResourceId == resourceId && IsContinuableState(waitBehavior, re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false); 433/// <param name="predicate">A predicate which is evaluated for each <see cref="ResourceEvent"/> for the selected resource.</param> 438public async Task<ResourceEvent> WaitForResourceAsync(string resourceName, Func<ResourceEvent, bool> predicate, CancellationToken cancellationToken = default) 441var resourceEvent = await WaitForResourceCoreAsync(resourceName, predicate, cancellationToken).ConfigureAwait(false); 447private async Task<ResourceEvent> WaitForResourceCoreAsync(string resourceName, Func<ResourceEvent, bool> predicate, CancellationToken cancellationToken = default) 451await foreach (var resourceEvent in WatchAsync(watchToken).ConfigureAwait(false)) 481/// <param name="resourceEvent">When this method returns, contains the <see cref="ResourceEvent"/> for the specified resource id, if found; otherwise, <see langword="null"/>.</param> 483public bool TryGetCurrentState(string resourceId, [NotNullWhen(true)] out ResourceEvent? resourceEvent) 525public async IAsyncEnumerable<ResourceEvent> WatchAsync([EnumeratorCancellation] CancellationToken cancellationToken = default) 527var channel = Channel.CreateUnbounded<ResourceEvent>(); 529void WriteToChannel(ResourceEvent resourceEvent) => 557await foreach (var item in channel.Reader.ReadAllAsync(cancellationToken).ConfigureAwait(false))
ApplicationModel\ResourceStoppedEvent.cs (2)
17public class ResourceStoppedEvent(IResource resource, IServiceProvider services, ResourceEvent resourceEvent) : IDistributedApplicationResourceEvent 30public ResourceEvent ResourceEvent { get; } = resourceEvent;
Backchannel\AppHostRpcTarget.cs (1)
108await foreach (var resourceEvent in resourceEvents.WithCancellation(linkedToken).ConfigureAwait(false))
Dashboard\DashboardEventHandlers.cs (1)
732await foreach (var notification in resourceNotificationService.WatchAsync(cancellationToken).ConfigureAwait(false))
Dashboard\DashboardServiceData.cs (1)
68await foreach (var @event in resourceNotificationService.WatchAsync().WithCancellation(cancellationToken).ConfigureAwait(false))
Devcontainers\Codespaces\CodespacesResourceUrlRewriterService.cs (1)
28await foreach (var resourceEvent in resourceEvents.ConfigureAwait(false))
DistributedApplication.cs (2)
577app.ResourceNotifications.TryGetCurrentState(instance.Name, out var resourceEvent); 583app.ResourceNotifications.TryGetCurrentState(resource.Name, out var resourceEvent);
Exec\ExecResourceManager.cs (1)
127if (!_resourceNotificationService.TryGetCurrentState(dcpExecResourceName, out var resourceEvent))
Health\ResourceHealthCheckService.cs (8)
29await foreach (var resourceEvent in resourceEvents.ConfigureAwait(false)) 128ResourceEvent? currentEvent = null; 317public ResourceMonitorState(ILogger logger, ResourceEvent initialEvent, CancellationToken serviceStoppingToken) 330public ResourceEvent LatestEvent { get; private set; } 338public void SetLatestEvent(ResourceEvent resourceEvent) 354internal async Task<bool> DelayAsync(ResourceEvent? currentEvent, TimeSpan delay, CancellationToken cancellationToken) 377private static bool ShouldInterrupt(ResourceEvent currentEvent, ResourceEvent previousEvent)
Orchestrator\ApplicationOrchestrator.cs (2)
497if (_notificationService.TryGetCurrentState(context.DcpResourceName, out var previousResourceEvent)) 518if (_notificationService.TryGetCurrentState(context.DcpResourceName, out var currentResourceEvent))
ResourceBuilderExtensions.cs (1)
2218await foreach (var resourceEvent in rns.WatchAsync(ct).WithCancellation(ct))
ResourceLoggerForwarderService.cs (1)
42await foreach (var resourceEvent in resourceNotificationService.WatchAsync(cancellationToken).ConfigureAwait(false))
Aspire.Hosting.Azure.Tests (1)
AzureBicepProvisionerTests.cs (1)
69await foreach (var resourceEvent in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
Aspire.Hosting.Containers.Tests (1)
DockerSocketBindMountTests.cs (1)
41var state = await rns.WaitForResourceAsync(
Aspire.Hosting.MySql.Tests (1)
MySqlFunctionalTests.cs (1)
603var resourceEvent = await rns.WaitForResourceAsync(resourceName, (evt) =>
Aspire.Hosting.PostgreSQL.Tests (1)
PostgresFunctionalTests.cs (1)
580var resourceEvent = await rns.WaitForResourceAsync(resourceName, (evt) =>
Aspire.Hosting.Testing.Tests (1)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
132await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))
Aspire.Hosting.Tests (77)
Codespaces\CodespacesUrlRewriterTests.cs (1)
79var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
DistributedApplicationTests.cs (15)
145var resourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 191var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 192var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 213var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 221var dependentResourceRunningEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 328var notStartedResourceEvent = await rns.WaitForResourceAsync(explicitStartResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 400var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 401var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 421var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 428var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 478ResourceEvent? notStartedResourceEvent = null; 479ResourceEvent? dependentResourceEvent = null; 506var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan); 513var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running, token).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan); 962var dependentRunningResourceEvent = await rns.WaitForResourceAsync(container.Resource.Name, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
301var testResourceEvent = new ResourceEvent(resource.Resource, "test-resource", testSnapshot);
ExternalServiceTests.cs (3)
320var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync( 347var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync( 374var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
Health\ResourceHealthCheckServiceTests.cs (12)
37var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout(); 45var healthyEvent = await app.ResourceNotifications.WaitForResourceHealthyAsync("resource").DefaultTimeout(); 77var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout(); 85var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(); 120var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout(); 128var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", 586var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout(); 595var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(); 602var healthyEvent = await app.ResourceNotifications.WaitForResourceHealthyAsync("resource").DefaultTimeout(); 632var startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout(); 640var runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(); 648var unhealthyEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.HealthStatus == HealthStatus.Unhealthy).DefaultTimeout();
Orchestrator\ApplicationOrchestratorTests.cs (15)
49await foreach (var item in resourceNotificationService.WatchAsync()) 97await foreach (var item in resourceNotificationService.WatchAsync()) 197await foreach (var item in resourceNotificationService.WatchAsync()) 263await foreach (var item in resourceNotificationService.WatchAsync()) 315await foreach (var item in resourceNotificationService.WatchAsync()) 432await foreach (var item in resourceNotificationService.WatchAsync()) 624var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.Snapshot.State?.Text : null; 625var childContainerState = resourceNotificationService.TryGetCurrentState(childContainer.Resource.Name, out var childContainerEvent) ? childContainerEvent.Snapshot.State?.Text : null; 626var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.Snapshot.State?.Text : null; 671var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.Snapshot.State?.Text : null; 672var childProjectState = resourceNotificationService.TryGetCurrentState(childProject.Resource.Name, out var childProjectEvent) ? childProjectEvent.Snapshot.State?.Text : null; 673var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.Snapshot.State?.Text : null; 712await foreach (var item in resourceNotificationService.WatchAsync()) 769await foreach (var item in resourceNotificationService.WatchAsync()) 823await foreach (var item in resourceNotificationService.WatchAsync())
Orchestrator\ParameterProcessorTests.cs (1)
84await foreach (var resourceEvent in notificationService.WatchAsync().ConfigureAwait(false))
ResourceNotificationTests.cs (19)
50async Task<List<ResourceEvent>> GetValuesAsync(CancellationToken cancellationToken) 52var values = new List<ResourceEvent>(); 54await foreach (var item in notificationService.WatchAsync(cancellationToken)) 103async Task<List<ResourceEvent>> GetValuesAsync(CancellationToken cancellation) 105var values = new List<ResourceEvent>(); 107await foreach (var item in notificationService.WatchAsync(cancellation)) 445async Task<List<ResourceEvent>> GetValuesAsync(CancellationToken cancellationToken) 447var values = new List<ResourceEvent>(); 449await foreach (var item in notificationService.WatchAsync(cancellationToken)) 483var firstEvent = values[0]; 488var secondEvent = values[1]; 505async Task<ResourceEvent> GetFirstValueAsync(CancellationToken cancellationToken) 507await foreach (var item in notificationService.WatchAsync(cancellationToken)) 523var value = await enumerableTask.DefaultTimeout(); 541async Task<ResourceEvent> GetFirstValueAsync(CancellationToken cancellationToken) 543await foreach (var item in notificationService.WatchAsync(cancellationToken)) 559var value = await enumerableTask.DefaultTimeout(); 598var resourceEvent = await waitTask.DefaultTimeout(); 667var resourceEvent = await waitTask.DefaultTimeout();
Utils\LoggerNotificationExtensions.cs (1)
132await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))
WithHttpCommandTests.cs (2)
384await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(watchCts.Token).WithCancellation(watchCts.Token)) 454await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(watchCts.Token).WithCancellation(watchCts.Token))
WithUrlsTests.cs (7)
385var resourceEvent = await rns.WaitForResourceAsync( 412var resourceEvent = await rns.WaitForResourceAsync( 445var resourceEvent = await rns.WaitForResourceAsync( 479await foreach (var notification in rns.WatchAsync(cts.Token)) 597await foreach (var notification in rns.WatchAsync(cts.Token)) 675var resourceEvent = await rns.WaitForResourceAsync( 977var resourceEvent = await rns.WaitForResourceAsync(
Aspire.Playground.Tests (1)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
132await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))