Add Phoenix remote desktop, action connector, documentation engine, and gamification support. Refactor support-case processing and search/action UI, and update installer assets and dependencies.
50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using C4IT.FASD.Base;
|
|
using FasdDesktopUi.Basics.Models;
|
|
using FasdDesktopUi.Basics.UiActions.NativeActions;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace FasdDesktopUi.Basics.UiActions
|
|
{
|
|
internal class UiNativeQuickAction : cUiQuickAction
|
|
{
|
|
private readonly string _nativeActionName;
|
|
|
|
public UiNativeQuickAction(FasdNativeQuickAction quickActionConfig) : base(quickActionConfig)
|
|
{
|
|
_nativeActionName = quickActionConfig.NativeName;
|
|
}
|
|
|
|
public override Task<cDataCanvasDataModel> GetQuickActionDataAsync(cSupportCaseDataProvider dataProvider, bool isDetailedLayout)
|
|
{
|
|
DataProvider = dataProvider;
|
|
|
|
switch (_nativeActionName)
|
|
{
|
|
case RemoteConnectionAction.NativeActionName:
|
|
return Task.FromResult(RemoteConnectionAction.GetQuickActionData(QuickActionConfig, ProcessActionAsync));
|
|
default:
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
|
|
public override async Task<List<object>> ProcessActionAsync(CancellationToken token, Dictionary<cAdjustableParameter, object> parameterDictionary = null)
|
|
{
|
|
return await RunNativeAction(_nativeActionName, token);
|
|
}
|
|
|
|
private async Task<List<object>> RunNativeAction(string actionName, CancellationToken token)
|
|
{
|
|
switch (actionName)
|
|
{
|
|
case RemoteConnectionAction.NativeActionName:
|
|
return await RemoteConnectionAction.RunQuickAction(QuickActionConfig.Name, StatusMonitor, DataProvider?.NamedParameterEntries, token);
|
|
default:
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|
|
}
|