6 instantiations of ResourceEvent
Aspire.Hosting (4)
ApplicationModel\ResourceNotificationService.cs (4)
489
resourceEvent = new
ResourceEvent
(state.Resource, resourceId, snapshot);
512
resourceEvent = new
ResourceEvent
(m.Value.Resource, m.Key, m.Value.LastSnapshot);
550
yield return new
ResourceEvent
(state.Value.Resource, resourceId, snapshot);
610
OnResourceUpdated?.Invoke(new
ResourceEvent
(resource, resourceId, newState));
Aspire.Hosting.DevTunnels (1)
DevTunnelResourceBuilderExtensions.cs (1)
677
await eventing.PublishAsync<ResourceStoppedEvent>(new(portResource, e.Services,
new
(portResource, portResource.Name, stoppedSnapshot!)), ct).ConfigureAwait(false);
Aspire.Hosting.Tests (1)
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
301
var testResourceEvent = new
ResourceEvent
(resource.Resource, "test-resource", testSnapshot);
120 references to ResourceEvent
Aspire.Hosting (41)
ApplicationModel\ResourceCommandService.cs (1)
47
if (!_resourceNotificationService.TryGetCurrentState(resourceId, out
var
resourceEvent))
ApplicationModel\ResourceNotificationService.cs (21)
30
private Action<
ResourceEvent
>? OnResourceUpdated { get; set; }
129
await foreach (
var
resourceEvent in WatchAsync(watchToken).ConfigureAwait(false))
185
public async Task<
ResourceEvent
> WaitForResourceHealthyAsync(string resourceName, CancellationToken cancellationToken = default)
218
public async Task<
ResourceEvent
> WaitForResourceHealthyAsync(string resourceName, WaitBehavior waitBehavior, CancellationToken cancellationToken = default)
221
var
resourceEvent = await WaitForResourceCoreAsync(resourceName, re => ShouldYield(waitBehavior, re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false);
274
var
resourceEvent = await WaitForResourceCoreAsync(dependency.Name, re => re.ResourceId == resourceId && IsKnownTerminalState(re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false);
310
Func<ILogger, string, string,
ResourceEvent
, Task> postRunningAction, CancellationToken cancellationToken)
329
var
resourceEvent = await WaitForResourceCoreAsync(dependency.Name, re => re.ResourceId == resourceId && IsContinuableState(waitBehavior, re.Snapshot), cancellationToken: cancellationToken).ConfigureAwait(false);
432
/// <param name="predicate">A predicate which is evaluated for each <see cref="
ResourceEvent
"/> for the selected resource.</param>
437
public async Task<
ResourceEvent
> WaitForResourceAsync(string resourceName, Func<
ResourceEvent
, bool> predicate, CancellationToken cancellationToken = default)
440
var
resourceEvent = await WaitForResourceCoreAsync(resourceName, predicate, cancellationToken).ConfigureAwait(false);
446
private async Task<
ResourceEvent
> WaitForResourceCoreAsync(string resourceName, Func<
ResourceEvent
, bool> predicate, CancellationToken cancellationToken = default)
450
await foreach (
var
resourceEvent in WatchAsync(watchToken).ConfigureAwait(false))
480
/// <param name="resourceEvent">When this method returns, contains the <see cref="
ResourceEvent
"/> for the specified resource id, if found; otherwise, <see langword="null"/>.</param>
482
public bool TryGetCurrentState(string resourceId, [NotNullWhen(true)] out
ResourceEvent
? resourceEvent)
524
public async IAsyncEnumerable<
ResourceEvent
> WatchAsync([EnumeratorCancellation] CancellationToken cancellationToken = default)
526
var channel = Channel.CreateUnbounded<
ResourceEvent
>();
528
void WriteToChannel(
ResourceEvent
resourceEvent) =>
556
await foreach (
var
item in channel.Reader.ReadAllAsync(cancellationToken).ConfigureAwait(false))
ApplicationModel\ResourceStoppedEvent.cs (2)
17
public class ResourceStoppedEvent(IResource resource, IServiceProvider services,
ResourceEvent
resourceEvent) : IDistributedApplicationResourceEvent
30
public
ResourceEvent
ResourceEvent { get; } = resourceEvent;
Backchannel\AppHostRpcTarget.cs (1)
73
await foreach (
var
resourceEvent in resourceEvents.WithCancellation(cancellationToken).ConfigureAwait(false))
Dashboard\DashboardEventHandlers.cs (1)
673
await foreach (
var
notification in resourceNotificationService.WatchAsync(cancellationToken).ConfigureAwait(false))
Dashboard\DashboardServiceData.cs (1)
68
await foreach (
var
@event in resourceNotificationService.WatchAsync().WithCancellation(cancellationToken).ConfigureAwait(false))
Devcontainers\Codespaces\CodespacesResourceUrlRewriterService.cs (1)
28
await foreach (
var
resourceEvent in resourceEvents.ConfigureAwait(false))
Exec\ExecResourceManager.cs (1)
127
if (!_resourceNotificationService.TryGetCurrentState(dcpExecResourceName, out
var
resourceEvent))
Health\ResourceHealthCheckService.cs (8)
29
await foreach (
var
resourceEvent in resourceEvents.ConfigureAwait(false))
128
ResourceEvent
? currentEvent = null;
317
public ResourceMonitorState(ILogger logger,
ResourceEvent
initialEvent, CancellationToken serviceStoppingToken)
330
public
ResourceEvent
LatestEvent { get; private set; }
338
public void SetLatestEvent(
ResourceEvent
resourceEvent)
354
internal async Task<bool> DelayAsync(
ResourceEvent
? currentEvent, TimeSpan delay, CancellationToken cancellationToken)
377
private static bool ShouldInterrupt(
ResourceEvent
currentEvent,
ResourceEvent
previousEvent)
Orchestrator\ApplicationOrchestrator.cs (2)
315
if (_notificationService.TryGetCurrentState(context.DcpResourceName, out
var
previousResourceEvent))
336
if (_notificationService.TryGetCurrentState(context.DcpResourceName, out
var
currentResourceEvent))
ResourceBuilderExtensions.cs (1)
1932
await foreach (
var
resourceEvent in rns.WatchAsync(ct).WithCancellation(ct))
ResourceLoggerForwarderService.cs (1)
42
await foreach (
var
resourceEvent in resourceNotificationService.WatchAsync(cancellationToken).ConfigureAwait(false))
Aspire.Hosting.Azure.Tests (1)
AzureBicepProvisionerTests.cs (1)
64
await foreach (
var
resourceEvent in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
Aspire.Hosting.Containers.Tests (1)
DockerSocketBindMountTests.cs (1)
41
var
state = await rns.WaitForResourceAsync(
Aspire.Hosting.MySql.Tests (1)
MySqlFunctionalTests.cs (1)
599
var
resourceEvent = await rns.WaitForResourceAsync(resourceName, (evt) =>
Aspire.Hosting.PostgreSQL.Tests (1)
PostgresFunctionalTests.cs (1)
578
var
resourceEvent = await rns.WaitForResourceAsync(resourceName, (evt) =>
Aspire.Hosting.Testing.Tests (1)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
132
await foreach (
var
resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))
Aspire.Hosting.Tests (73)
Codespaces\CodespacesUrlRewriterTests.cs (1)
79
var
resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
DistributedApplicationTests.cs (13)
139
var
resourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
183
var
notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
184
var
dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
205
var
runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
213
var
dependentResourceRunningEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
258
var
notStartedResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.NotStarted).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
259
var
dependentResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Waiting).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
279
var
runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
286
var
dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.LongTimeoutTimeSpan);
334
ResourceEvent
? notStartedResourceEvent = null;
335
ResourceEvent
? dependentResourceEvent = null;
362
var
runningResourceEvent = await rns.WaitForResourceAsync(notStartedResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
369
var
dependentRunningResourceEvent = await rns.WaitForResourceAsync(dependentResourceName, e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout(TestConstants.ExtraLongTimeoutTimeSpan);
Eventing\DistributedApplicationBuilderEventingTests.cs (1)
301
var
testResourceEvent = new ResourceEvent(resource.Resource, "test-resource", testSnapshot);
ExternalServiceTests.cs (3)
297
var
resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
324
var
resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
351
var
resourceEvent = await app.ResourceNotifications.WaitForResourceAsync(
Health\ResourceHealthCheckServiceTests.cs (12)
37
var
startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
45
var
healthyEvent = await app.ResourceNotifications.WaitForResourceHealthyAsync("resource").DefaultTimeout();
77
var
startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
85
var
runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout();
120
var
startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
128
var
runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource",
586
var
startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
595
var
runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout();
602
var
healthyEvent = await app.ResourceNotifications.WaitForResourceHealthyAsync("resource").DefaultTimeout();
632
var
startingEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Starting).DefaultTimeout();
640
var
runningEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.State?.Text == KnownResourceStates.Running).DefaultTimeout();
648
var
unhealthyEvent = await app.ResourceNotifications.WaitForResourceAsync("resource", e => e.Snapshot.HealthStatus == HealthStatus.Unhealthy).DefaultTimeout();
Orchestrator\ApplicationOrchestratorTests.cs (15)
44
await foreach (
var
item in resourceNotificationService.WatchAsync())
91
await foreach (
var
item in resourceNotificationService.WatchAsync())
189
await foreach (
var
item in resourceNotificationService.WatchAsync())
254
await foreach (
var
item in resourceNotificationService.WatchAsync())
305
await foreach (
var
item in resourceNotificationService.WatchAsync())
420
await foreach (
var
item in resourceNotificationService.WatchAsync())
604
var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out
var
parentEvent) ? parentEvent.Snapshot.State?.Text : null;
605
var childContainerState = resourceNotificationService.TryGetCurrentState(childContainer.Resource.Name, out
var
childContainerEvent) ? childContainerEvent.Snapshot.State?.Text : null;
606
var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out
var
customChildEvent) ? customChildEvent.Snapshot.State?.Text : null;
650
var parentState = resourceNotificationService.TryGetCurrentState("parent-container-dcp", out
var
parentEvent) ? parentEvent.Snapshot.State?.Text : null;
651
var childProjectState = resourceNotificationService.TryGetCurrentState(childProject.Resource.Name, out
var
childProjectEvent) ? childProjectEvent.Snapshot.State?.Text : null;
652
var customChildState = resourceNotificationService.TryGetCurrentState(customChild.Resource.Name, out
var
customChildEvent) ? customChildEvent.Snapshot.State?.Text : null;
690
await foreach (
var
item in resourceNotificationService.WatchAsync())
746
await foreach (
var
item in resourceNotificationService.WatchAsync())
799
await foreach (
var
item in resourceNotificationService.WatchAsync())
Orchestrator\ParameterProcessorTests.cs (1)
83
await foreach (
var
resourceEvent in notificationService.WatchAsync().ConfigureAwait(false))
ResourceNotificationTests.cs (19)
50
async Task<List<
ResourceEvent
>> GetValuesAsync(CancellationToken cancellationToken)
52
var values = new List<
ResourceEvent
>();
54
await foreach (
var
item in notificationService.WatchAsync(cancellationToken))
103
async Task<List<
ResourceEvent
>> GetValuesAsync(CancellationToken cancellation)
105
var values = new List<
ResourceEvent
>();
107
await foreach (
var
item in notificationService.WatchAsync(cancellation))
445
async Task<List<
ResourceEvent
>> GetValuesAsync(CancellationToken cancellationToken)
447
var values = new List<
ResourceEvent
>();
449
await foreach (
var
item in notificationService.WatchAsync(cancellationToken))
483
var
firstEvent = values[0];
488
var
secondEvent = values[1];
505
async Task<
ResourceEvent
> GetFirstValueAsync(CancellationToken cancellationToken)
507
await foreach (
var
item in notificationService.WatchAsync(cancellationToken))
523
var
value = await enumerableTask.DefaultTimeout();
541
async Task<
ResourceEvent
> GetFirstValueAsync(CancellationToken cancellationToken)
543
await foreach (
var
item in notificationService.WatchAsync(cancellationToken))
559
var
value = await enumerableTask.DefaultTimeout();
598
var
resourceEvent = await waitTask.DefaultTimeout();
667
var
resourceEvent = await waitTask.DefaultTimeout();
Utils\LoggerNotificationExtensions.cs (1)
132
await foreach (
var
resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))
WithHttpCommandTests.cs (2)
384
await foreach (
var
resourceEvent in app.ResourceNotifications.WatchAsync(watchCts.Token).WithCancellation(watchCts.Token))
454
await foreach (
var
resourceEvent in app.ResourceNotifications.WatchAsync(watchCts.Token).WithCancellation(watchCts.Token))
WithUrlsTests.cs (5)
331
await foreach (
var
notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
367
await foreach (
var
notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
411
await foreach (
var
notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
500
await foreach (
var
notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
621
await foreach (
var
notification in rns.WatchAsync(cts.Token).WithCancellation(cts.Token))
Aspire.Playground.Tests (1)
tests\Aspire.Hosting.Tests\Utils\LoggerNotificationExtensions.cs (1)
132
await foreach (
var
resourceEvent in app.ResourceNotifications.WatchAsync(cancellationTokenSource.Token).ConfigureAwait(false))