コード例 #1
0
        protected PowerShellHost(string name, IRestoreEvents restoreEvents, IRunspaceManager runspaceManager)
        {
            _restoreEvents   = restoreEvents;
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _sourceRepositoryProvider = ServiceLocator.GetInstance <ISourceRepositoryProvider>();
            _solutionManager          = ServiceLocator.GetInstance <IVsSolutionManager>();
            _settings = ServiceLocator.GetInstance <ISettings>();
            _deleteOnRestartManager = ServiceLocator.GetInstance <IDeleteOnRestartManager>();
            _scriptExecutor         = ServiceLocator.GetInstance <IScriptExecutor>();

            _dte = ServiceLocator.GetInstance <DTE>();
            _sourceControlManagerProvider = ServiceLocator.GetInstanceSafe <ISourceControlManagerProvider>();
            _commonOperations             = ServiceLocator.GetInstanceSafe <ICommonOperations>();
            PackageManagementContext      = new PackageManagementContext(_sourceRepositoryProvider, _solutionManager,
                                                                         _settings, _sourceControlManagerProvider, _commonOperations);

            _name            = name;
            IsCommandEnabled = true;

            InitializeSources();

            _sourceRepositoryProvider.PackageSourceProvider.PackageSourcesChanged += PackageSourceProvider_PackageSourcesChanged;
            _restoreEvents.SolutionRestoreCompleted += RestoreEvents_SolutionRestoreCompleted;
        }
コード例 #2
0
 public GeneratedModule(IRunspaceManager runspace)
 {
     this.runspace         = runspace;
     this.RequiredModules  = new List <GeneratedModule>();
     this.Operations       = new Dictionary <string, OperationData>();
     this.definitionsCache = new Dictionary <string, RuntimeTypeData>();
 }
コード例 #3
0
        public void Execute(IActivityRequest request, IActivityResponse response)
        {
            SecureString password = new SecureString();

            settings.Password.ToCharArray().ToList().ForEach(password.AppendChar);
            PSCredential creds = new PSCredential(settings.UserName, password);

            PSRunspaceCreationData creationData = new PSRunspaceCreationData();

            creationData.Credentials        = creds;
            creationData.Hostname           = request.Inputs["Computer name"].AsString();
            creationData.Port               = request.Inputs["Connection port"].AsInt32();
            creationData.UseSsl             = request.Inputs["Use SSL"].AsBoolean();
            creationData.LoadMachineProfile = request.Inputs["Load host profile"].AsBoolean();
            creationData.Name               = request.Inputs["Session name"].AsString().ToUpper();

            IRunspaceManager      runspaceManager = PSRunspaceManger.CreateClient();
            RemoteOperationResult result          = runspaceManager.OpenRunspace(creationData);

            if (!result.Success)
            {
                throw new Exception(result.Message);
            }

            response.Publish("Session name", creationData.Name);
        }
コード例 #4
0
        public void Execute(IActivityRequest request, IActivityResponse response)
        {
            IRunspaceManager      runspaceManager = PSRunspaceManger.CreateClient();
            RemoteOperationResult result          = runspaceManager.CloseRunspace(request.Inputs["Session name"].AsString().ToUpper());

            if (!result.Success)
            {
                throw new Exception(result.Message);
            }
        }
コード例 #5
0
ファイル: PowerShellHost.cs プロジェクト: hu19891110/NuGet
        protected PowerShellHost(string name, IRunspaceManager runspaceManager)
        {
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _packageSourceProvider = ServiceLocator.GetInstance <IVsPackageSourceProvider>();
            _solutionManager       = ServiceLocator.GetInstance <ISolutionManager>();

            _name            = name;
            IsCommandEnabled = true;
        }
コード例 #6
0
ファイル: PowerShellHost.cs プロジェクト: xero-github/Nuget
        protected PowerShellHost(string name, IRunspaceManager runspaceManager)
        {
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _packageSourceProvider = ServiceLocator.GetInstance<IVsPackageSourceProvider>();
            _solutionManager = ServiceLocator.GetInstance<ISolutionManager>();

            _name = name;
            IsCommandEnabled = true;
        }
コード例 #7
0
        public void Execute(IActivityRequest request, IActivityResponse response)
        {
            IRunspaceManager      runspaceManager = PSRunspaceManger.CreateClient();
            RemoteOperationResult result          = runspaceManager.ExecuteCommand(request.Inputs["Session name"].AsString().ToUpper(), request.Inputs["Script code"].AsString());

            if (!result.Success)
            {
                throw new Exception(result.Message);
            }

            response.Publish("Session name", request.Inputs["Session name"].AsString().ToUpper());
            response.Publish("Script result", result.Message);
        }
コード例 #8
0
        public void Execute(IActivityRequest request, IActivityResponse response)
        {
            string                command         = string.Format("Set-Variable {0} \"{1}\" ", request.Inputs["Variable name"].AsString(), request.Inputs["Variable value"].AsString());
            IRunspaceManager      runspaceManager = PSRunspaceManger.CreateClient();
            RemoteOperationResult result          = runspaceManager.ExecuteCommand(request.Inputs["Session name"].AsString().ToUpper(), command);

            if (!result.Success)
            {
                throw new Exception(result.Message);
            }

            response.Publish("Session name", request.Inputs["Session Name"].AsString().ToUpper());
            response.Publish("Variable value", result.Message);
        }
コード例 #9
0
        protected PowerShellHost(string name, IRestoreEvents restoreEvents, IRunspaceManager runspaceManager)
        {
            _restoreEvents   = restoreEvents;
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            var componentModel = NuGetUIThreadHelper.JoinableTaskFactory.Run(ServiceLocator.GetComponentModelAsync);

            _sourceRepositoryProvider = componentModel.GetService <ISourceRepositoryProvider>();
            _solutionManager          = new Lazy <IVsSolutionManager>(() => componentModel.GetService <IVsSolutionManager>());
            _settings = new Lazy <ISettings>(() => componentModel.GetService <ISettings>());
            _deleteOnRestartManager  = new Lazy <IDeleteOnRestartManager>(() => componentModel.GetService <IDeleteOnRestartManager>());
            _scriptExecutor          = new Lazy <IScriptExecutor>(() => componentModel.GetService <IScriptExecutor>());
            _restoreProgressReporter = new Lazy <IRestoreProgressReporter>(() => componentModel.GetService <IRestoreProgressReporter>());

            _dte = new Lazy <DTE>(() => ServiceLocator.GetInstance <DTE>());
            _sourceControlManagerProvider = new Lazy <ISourceControlManagerProvider>(
                () => componentModel.GetService <ISourceControlManagerProvider>());
            _commonOperations = new Lazy <ICommonOperations>(() => componentModel.GetService <ICommonOperations>());
            _name             = name;
            IsCommandEnabled  = true;

            InitializeSources();

            _sourceRepositoryProvider.PackageSourceProvider.PackageSourcesChanged += PackageSourceProvider_PackageSourcesChanged;
            _restoreEvents.SolutionRestoreCompleted += RestoreEvents_SolutionRestoreCompleted;

            _vsMonitorSelection = new Microsoft.VisualStudio.Threading.AsyncLazy <IVsMonitorSelection>(
                async() =>
            {
                await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync();

                // get the UI context cookie for the debugging mode
                var vsMonitorSelection = ServiceLocator.GetGlobalService <IVsMonitorSelection, IVsMonitorSelection>();

                var guidCmdUI = VSConstants.UICONTEXT.SolutionExists_guid;
                vsMonitorSelection.GetCmdUIContextCookie(
                    ref guidCmdUI, out _solutionExistsCookie);

                return(vsMonitorSelection);
            },
                ThreadHelper.JoinableTaskFactory);
        }
コード例 #10
0
        protected PowerShellHost(string name, IRunspaceManager runspaceManager)
        {
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _sourceRepositoryProvider = ServiceLocator.GetInstance<ISourceRepositoryProvider>();
            _solutionManager = ServiceLocator.GetInstance<ISolutionManager>();
            _settings = ServiceLocator.GetInstance<ISettings>();
            _dte = ServiceLocator.GetInstance<DTE>();
            _sourceControlManagerProvider = ServiceLocator.GetInstanceSafe<ISourceControlManagerProvider>();
            _commonOperations = ServiceLocator.GetInstanceSafe<ICommonOperations>();
            _packageManagementContext = new PackageManagementContext(_sourceRepositoryProvider, _solutionManager,
                _settings, _sourceControlManagerProvider, _commonOperations);

            _name = name;
            IsCommandEnabled = true;

            InitializeSources();

            _sourceRepositoryProvider.PackageSourceProvider.PackageSourcesSaved += PackageSourceProvider_PackageSourcesSaved;
        }
コード例 #11
0
        protected PowerShellHost(string name, IRunspaceManager runspaceManager)
        {
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _sourceRepositoryProvider = ServiceLocator.GetInstance <ISourceRepositoryProvider>();
            _solutionManager          = ServiceLocator.GetInstance <ISolutionManager>();
            _settings = ServiceLocator.GetInstance <ISettings>();
            _dte      = ServiceLocator.GetInstance <DTE>();
            _sourceControlManagerProvider = ServiceLocator.GetInstanceSafe <ISourceControlManagerProvider>();
            _commonOperations             = ServiceLocator.GetInstanceSafe <ICommonOperations>();
            _packageManagementContext     = new PackageManagementContext(_sourceRepositoryProvider, _solutionManager,
                                                                         _settings, _sourceControlManagerProvider, _commonOperations);

            _name            = name;
            IsCommandEnabled = true;

            InitializeSources();

            _sourceRepositoryProvider.PackageSourceProvider.PackageSourcesSaved += PackageSourceProvider_PackageSourcesSaved;
        }
コード例 #12
0
        public void Execute(IActivityRequest request, IActivityResponse response)
        {
            try
            {
                IRunspaceManager            runspaceManager = PSRunspaceManger.CreateClient();
                Dictionary <string, string> result          = runspaceManager.GetRunspaces();

                List <SessionInfoData> sessions = new List <SessionInfoData>();
                foreach (KeyValuePair <string, string> pair in result)
                {
                    sessions.Add(new SessionInfoData(pair.Key, pair.Value));
                }

                response.WithFiltering().PublishRange(sessions);
                response.Publish("Session count", sessions.Count);
            }
            catch (Exception)
            {
                throw new Exception("An error occured while enumerating sessions");
            }
        }
コード例 #13
0
 public SyncPowerShellHost(string name, IRunspaceManager runspaceManager)
     : base(name, runspaceManager)
 {
 }
コード例 #14
0
 public AsyncPowerShellHost(string name, IRestoreEvents restoreEvents, IRunspaceManager runspaceManager)
     : base(name, restoreEvents, runspaceManager)
 {
 }
コード例 #15
0
 public PowerShellCommand(IRunspaceManager runspace)
 {
     this.runspace          = runspace;
     this.powershellCommand = null;
 }
コード例 #16
0
 public AsyncPowerShellHost(string name, IRunspaceManager runspaceManager)
     : base(name, runspaceManager)
 {
 }
コード例 #17
0
 public GeneratedModule(IRunspaceManager runspace)
 {
     this.runspace        = runspace;
     this.RequiredModules = new List <GeneratedModule>();
 }
コード例 #18
0
 public MockGeneratedModule(IRunspaceManager runspace) : base(runspace)
 {
 }
コード例 #19
0
 public MockCommandBuilder(MockRunspaceManager runspace)
 {
     this.runspace      = runspace;
     this.Parameters    = new Dictionary <string, object>();
     this.InvokeHistory = new List <string>();
 }