/// <summary>
        /// Initializes a new instance of the DebugService class and uses
        /// the given execution service for all future operations.
        /// </summary>
        public DebugService(
            IInternalPowerShellExecutionService executionService,
            IPowerShellDebugContext debugContext,
            RemoteFileManagerService remoteFileManager,
            BreakpointService breakpointService,
            PsesInternalHost psesHost,
            ILoggerFactory factory)
        {
            Validate.IsNotNull(nameof(executionService), executionService);

            _logger                          = factory.CreateLogger <DebugService>();
            _executionService                = executionService;
            _breakpointService               = breakpointService;
            _psesHost                        = psesHost;
            _debugContext                    = debugContext;
            _debugContext.DebuggerStopped   += OnDebuggerStopAsync;
            _debugContext.DebuggerResuming  += OnDebuggerResuming;
            _debugContext.BreakpointUpdated += OnBreakpointUpdated;
            _remoteFileManager               = remoteFileManager;

            invocationTypeScriptPositionProperty =
                typeof(InvocationInfo)
                .GetProperty(
                    "ScriptPosition",
                    BindingFlags.NonPublic | BindingFlags.Instance);
        }
 public DebugEvaluateHandler(
     ILoggerFactory factory,
     IPowerShellDebugContext debugContext,
     IInternalPowerShellExecutionService executionService,
     DebugService debugService)
 {
     _logger           = factory.CreateLogger <DebugEvaluateHandler>();
     _debugContext     = debugContext;
     _executionService = executionService;
     _debugService     = debugService;
 }
 public DebugEventHandlerService(
     ILoggerFactory factory,
     IInternalPowerShellExecutionService executionService,
     DebugService debugService,
     DebugStateService debugStateService,
     IDebugAdapterServerFacade debugAdapterServer,
     IPowerShellDebugContext debugContext)
 {
     _logger             = factory.CreateLogger <DebugEventHandlerService>();
     _executionService   = executionService;
     _debugService       = debugService;
     _debugStateService  = debugStateService;
     _debugAdapterServer = debugAdapterServer;
     _debugContext       = debugContext;
 }