Files
Walleby/Bitvault/ContainerViewModelHandler.cs
T
TheXamlGuy c1b6e595bc Mass rename
2024-05-12 11:02:19 +01:00

48 lines
1.8 KiB
C#

using Toolkit.Foundation;
namespace Bitvault;
public class ContainerViewModelHandler(IServiceFactory factory,
IPublisher publisher) :
INotificationHandler<Enumerate<ItemNavigationViewModel, ContainerViewModelConfiguration>>
{
public async Task Handle(Enumerate<ItemNavigationViewModel, ContainerViewModelConfiguration> args,
CancellationToken cancellationToken = default)
{
if (args.Options?.Filter is "All")
{
for (int i = 0; i < 100; i++)
{
if (factory.Create<ItemNavigationViewModel>("Name " + i, "Description " + 1) is ItemNavigationViewModel viewModel)
{
await publisher.Publish(new Create<ItemNavigationViewModel>(viewModel),
nameof(ContainerViewModel), cancellationToken);
}
}
}
if (args.Options?.Filter is "Starred")
{
for (int i = 0; i < 10; i++)
{
if (factory.Create<ItemNavigationViewModel>("Name " + i, "Description " + 1) is ItemNavigationViewModel viewModel)
{
await publisher.Publish(new Create<ItemNavigationViewModel>(viewModel),
nameof(ContainerViewModel), cancellationToken);
}
}
}
if (args.Options?.Filter is "Archive")
{
for (int i = 0; i < 1000; i++)
{
if (factory.Create<ItemNavigationViewModel>("Name " + i, "Description " + 1) is ItemNavigationViewModel viewModel)
{
await publisher.Publish(new Create<ItemNavigationViewModel>(viewModel),
nameof(ContainerViewModel), cancellationToken);
}
}
}
}
}