big refactoring. get rid of static properties and coupled architecture. prepare system for integration tests

This commit is contained in:
Oleksandr Bezdieniezhnykh
2025-11-17 13:14:05 +02:00
parent 22529c26ec
commit e7ea5a8ded
38 changed files with 808 additions and 157 deletions
@@ -0,0 +1,29 @@
using System.Windows.Threading;
namespace Azaion.Common.Services;
public class WpfUICommandDispatcher : IUICommandDispatcher
{
private readonly Dispatcher _dispatcher;
public WpfUICommandDispatcher(Dispatcher dispatcher)
{
_dispatcher = dispatcher;
}
public Task ExecuteAsync(Action action)
{
return _dispatcher.InvokeAsync(action).Task;
}
public Task<T> ExecuteAsync<T>(Func<T> func)
{
return _dispatcher.InvokeAsync(func).Task;
}
public void Execute(Action action)
{
_dispatcher.Invoke(action);
}
}