using C4IT.FASD.Base; using FasdCockpitBase.Models.RemoteDesktopConnection; using System; using System.Threading; using System.Threading.Tasks; namespace FasdCockpitBase { public class RemoteDesktopCommunicationBase { public virtual Task InitiateConnection(IRemoteDesktopClientInfo clientInfo, bool isElevated, CancellationToken token) where T : IRemoteDesktopConnectionDetails => Task.FromResult(default(T)); public virtual Task GetConnectionStatus(Guid connectionId, CancellationToken token) => Task.FromResult(new RemoteDesktopConnectionStatusResult(RemoteDesktopConnectionStatus.Unknown)); public virtual Task StopConnection(Guid connectionId, CancellationToken token) => Task.CompletedTask; public virtual Task GetHealth(CancellationToken token) => Task.FromResult(new HealthInformation(HealthStatus.healthy)); public virtual Task IsRemoteDesktopCommunicationAvailable() { bool isRemoteViewerInstalled = true; return Task.FromResult(isRemoteViewerInstalled); } } }