public async Task <string> Request_VM( string vmId, [FromQuery] string vmArg, [FromServices] WebApiVMControllerFactory vmControllerFactory, [FromServices] IHubServiceProvider hubServiceProvider, [FromServices] IPrincipalAccessor principalAccessor, [FromServices] IHubPipeline hubPipeline, [FromServices] IDotNetifyHubResponseManager hubResponseManager ) { var hub = CreateHubHandler(vmControllerFactory, hubServiceProvider, principalAccessor, hubPipeline, hubResponseManager, nameof(IDotNetifyHubMethod.Request_VM), vmId, vmArg); try { await hub.RequestVMAsync(vmId, vmArg); _taskCompletionSource.TrySetResult(_responses.LastOrDefault()); _responses.Clear(); } catch (Exception ex) { _taskCompletionSource.TrySetResult(ex.Serialize()); } return(await _taskCompletionSource.Task); }
public async Task Dispose_VM( string vmId, [FromServices] WebApiVMControllerFactory vmControllerFactory, [FromServices] IHubServiceProvider hubServiceProvider, [FromServices] IPrincipalAccessor principalAccessor, [FromServices] IHubPipeline hubPipeline, [FromServices] IDotNetifyHubResponseManager hubResponseManager ) { var hub = CreateHubHandler(vmControllerFactory, hubServiceProvider, principalAccessor, hubPipeline, hubResponseManager, nameof(IDotNetifyHubMethod.Dispose_VM), vmId); await hub.DisposeVMAsync(vmId); }