private ProviderInfo AddProvider(Type implementingType, string name, string helpFileName, PSSnapInInfo psSnapIn, PSModuleInfo module) { ProviderInfo provider = null; try { provider = new ProviderInfo( new SessionState(this), implementingType, name, helpFileName, psSnapIn); provider.SetModule(module); NewProvider(provider); // Log the provider start event MshLog.LogProviderLifecycleEvent( this.ExecutionContext, provider.Name, ProviderState.Started); } catch (LoopFlowException) { throw; } catch (PipelineStoppedException) { throw; } catch (ActionPreferenceStopException) { throw; } catch (SessionStateException sessionStateException) { if (sessionStateException.GetType() == typeof(SessionStateException)) { throw; } else { // NTRAID#Windows OS Bugs-1009281-2004/02/11-JeffJon this.ExecutionContext.ReportEngineStartupError(sessionStateException); } } catch (Exception e) // Catch-all OK, 3rd party callout { CommandProcessorBase.CheckForSevereException(e); // NTRAID#Windows OS Bugs-1009281-2004/02/11-JeffJon this.ExecutionContext.ReportEngineStartupError(e); } return provider; }
private ProviderInfo AddProvider(Type implementingType, string name, string helpFileName, PSSnapInInfo psSnapIn, PSModuleInfo module) { ProviderInfo provider = null; try { provider = new ProviderInfo(new SessionState(this), implementingType, name, helpFileName, psSnapIn); provider.SetModule(module); this.NewProvider(provider); MshLog.LogProviderLifecycleEvent(this.ExecutionContext, provider.Name, ProviderState.Started); } catch (LoopFlowException) { throw; } catch (PipelineStoppedException) { throw; } catch (ActionPreferenceStopException) { throw; } catch (SessionStateException exception) { if (exception.GetType() == typeof(SessionStateException)) { throw; } this.ExecutionContext.ReportEngineStartupError(exception); } catch (Exception exception2) { CommandProcessorBase.CheckForSevereException(exception2); this.ExecutionContext.ReportEngineStartupError(exception2); } return provider; }