internal static void LogEngineLifecycleEvent( ExecutionContext executionContext, EngineState engineState, InvocationInfo invocationInfo) { using (MshLog._trace.TraceMethod()) { if (executionContext == null) { MshLog._trace.NewArgumentNullException(nameof(executionContext)); } else { if (!MshLog.NeedToLogEngineLifecycleEvent(executionContext)) { return; } EngineState engineState1 = MshLog.GetEngineState(executionContext); if (engineState == engineState1) { return; } MshLog.GetLogProvider(executionContext).LogEngineLifecycleEvent(MshLog.GetLogContext(executionContext, invocationInfo), engineState, engineState1); MshLog.SetEngineState(executionContext, engineState); } } }