示例#1
0
        protected override void Dispose(bool disposing)
        {
            if (!_isDisposed)
            {
                _npmController.Dispose();

                if (null != _npmIdleTimer)
                {
                    _npmIdleTimer.Dispose();
                    _npmIdleTimer = null;
                }

                if (null != _npmController)
                {
                    _npmController.CommandStarted   -= NpmController_CommandStarted;
                    _npmController.OutputLogged     -= NpmController_OutputLogged;
                    _npmController.ErrorLogged      -= NpmController_ErrorLogged;
                    _npmController.ExceptionLogged  -= NpmController_ExceptionLogged;
                    _npmController.CommandCompleted -= NpmController_CommandCompleted;
                }

                _devModulesNode.Dispose();
                _optionalModulesNode.Dispose();

                _isDisposed = true;
            }

            base.Dispose(disposing);
        }