コード例 #1
0
ファイル: ServiceInformer.cs プロジェクト: juandrn/NetXP
 private ServiceStartupState GetServiceStartupState(OSPlatformType osPlatform, string startupState, string serviceName)
 {
     if (osPlatform == OSPlatformType.Linux)
     {
         if (startupState.ToLower().Contains("active") ||
             startupState.ToLower().Contains("enabled"))
         {
             return(ServiceStartupState.Active);
         }
         else if (startupState.ToLower().Contains("disabled"))
         {
             return(ServiceStartupState.Disabled);
         }
         else if (startupState.ToLower().Contains("failed"))
         {
             return(ServiceStartupState.Failed);
         }
         else if (startupState.ToLower().Contains("activating"))
         {
             return(ServiceStartupState.Activating);
         }
         else
         {
             throw new SystemInformationException($"ServiceStartupState \"{startupState}\" not recognized in linux system for service \"{serviceName}\".");
         }
     }
     else
     {
         throw new PlatformNotSupportedException("Platform not supported to get service startup state");
     }
 }
コード例 #2
0
ファイル: ServiceInformer.cs プロジェクト: juandrn/NetXP
 private ServiceState GetServiceState(OSPlatformType osPlatformType, string state, string serviceName)
 {
     if (osPlatformType == OSPlatformType.Linux)
     {
         if (state.ToLower().Contains("running")) ///Service
         {
             return(ServiceState.Running);
         }
         else if (state.ToLower().Contains("exited")) ///Service
         {
             return(ServiceState.Stopped);
         }
         else if (state.ToLower().Contains("")) ///Service
         {
             return(ServiceState.Failed);
         }
         else
         {
             throw new SystemInformationException($"ServiceStartupState \"{state}\" not recognized in linux system for service \"{serviceName}\"");
         }
     }
     else
     {
         throw new PlatformNotSupportedException("Platform not supported to get service state");
     }
 }
コード例 #3
0
 public IServiceManager Create(OSPlatformType osPlatformType)
 {
     if (osPlatformType == OSPlatformType.Linux ||
         osPlatformType == OSPlatformType.Windows)
     {
         return(container.Resolve <IServiceManager>(osPlatformType.ToString()));
     }
     else
     {
         throw new PlatformNotSupportedException();
     }
 }