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)
690await 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);
121 references to ResourceEvent
Aspire.Hosting (41)
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)
73await foreach (var resourceEvent in resourceEvents.WithCancellation(cancellationToken).ConfigureAwait(false))
Dashboard\DashboardEventHandlers.cs (1)
726await 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))
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)
404if (_notificationService.TryGetCurrentState(context.DcpResourceName, out var previousResourceEvent)) 425if (_notificationService.TryGetCurrentState(context.DcpResourceName, out var currentResourceEvent))
ResourceBuilderExtensions.cs (1)
2159await 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)
68await 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)
599var resourceEvent = await rns.WaitForResourceAsync(resourceName, (evt) =>
Aspire.Hosting.PostgreSQL.Tests (1)
PostgresFunctionalTests.cs (1)
578var 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 (74)
Codespaces\CodespacesUrlRewriterTests.cs (1)
79var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
DistributedApplicationTests.cs (14)
140var resourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 184var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 185var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 206var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 214var dependentResourceRunningEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 259var notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 260var dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 280var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 287var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan); 335ResourceEvent? notStartedResourceEvent = null; 336ResourceEvent? dependentResourceEvent = null; 363var runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan); 370var dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan); 860var 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)
298var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync( 325var resourceEvent = await app.ResourceNotifications.WaitForResourceAsync( 352var 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)
46await foreach (var item in resourceNotificationService.WatchAsync()) 93await foreach (var item in resourceNotificationService.WatchAsync()) 191await foreach (var item in resourceNotificationService.WatchAsync()) 256await foreach (var item in resourceNotificationService.WatchAsync()) 307await foreach (var item in resourceNotificationService.WatchAsync()) 422await foreach (var item in resourceNotificationService.WatchAsync()) 609var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.Snapshot.State?.Text : null; 610var childContainerState = resourceNotificationService.TryGetCurrentState(childContainer.Resource.Name, out var childContainerEvent) ? childContainerEvent.Snapshot.State?.Text : null; 611var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.Snapshot.State?.Text : null; 655var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out var parentEvent) ? parentEvent.Snapshot.State?.Text : null; 656var childProjectState = resourceNotificationService.TryGetCurrentState(childProject.Resource.Name, out var childProjectEvent) ? childProjectEvent.Snapshot.State?.Text : null; 657var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out var customChildEvent) ? customChildEvent.Snapshot.State?.Text : null; 695await foreach (var item in resourceNotificationService.WatchAsync()) 751await foreach (var item in resourceNotificationService.WatchAsync()) 804await foreach (var item in resourceNotificationService.WatchAsync())
Orchestrator\ParameterProcessorTests.cs (1)
82await 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 (5)
385await foreach (var notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token)) 421await foreach (var notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token)) 465await foreach (var notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token)) 554await foreach (var notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token)) 675await foreach (var notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
Aspire.Playground.Tests (1)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
132await foreach (var resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))