Beispiel #1
0
        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);
        }
Beispiel #2
0
 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);
 }