Ejemplo n.º 1
0
 private Task <WMIAccessService> TryGetAccessAsync(WMIConnectionOption wmiConnectionOption)
 {
     return(Task.Run(async() =>
     {
         WMIAccessService connectedWMIConnectedAccessService = null;
         if (wmiConnectionOption != null)
         {
             try
             {
                 var wmiAccessService = new WMIAccessService();
                 var connected = await wmiAccessService.TryConnectAsync(wmiConnectionOption).ConfigureAwait(false);
                 if (connected)
                 {
                     connectedWMIConnectedAccessService = wmiAccessService;
                 }
             }
             catch (Exception exception)
             {
                 var endPoint = string.IsNullOrEmpty(wmiConnectionOption.EndPoint)
                     ? wmiConnectionOption.DeviceName
                     : wmiConnectionOption.EndPoint;
                 var wmiException = new WMIGeneralException(endPoint, exception);
                 LogEventHandler.Exception(wmiException);
             }
         }
         return connectedWMIConnectedAccessService;
     }));
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Gets WMIAccessService for WMIConnectionOption that have access.
 /// </summary>
 /// <param name="wmiConnectionOption">To test access.</param>
 /// <returns>Returns awaitable Task with WMIAccessService.</returns>
 public async Task <WMIAccessService> GetAccessAsync(WMIConnectionOption wmiConnectionOption)
 {
     return(await TryGetAccessAsync(wmiConnectionOption).ConfigureAwait(false));
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Tries to connect.
        /// </summary>
        /// <param name="wmiConnectionOption">To try to connect.</param>
        /// <returns>Returns awaitable Task with bool state of connection.</returns>
        public async Task <bool> TryConnectAsync(WMIConnectionOption wmiConnectionOption)
        {
            await TryConnectAsync(wmiConnectionOption?.EndPoint, wmiConnectionOption?.ConnectionOptions).ConfigureAwait(false);

            return(Connected);
        }