void CreateOneRegisteredPackageSource()
		{
			Properties properties = new Properties();
			Options = new PackageManagementOptions(properties);
			RegisteredPackageSources = Options.PackageSources;
			AddOnePackageSource();
		}
		void CreateFactory()
		{
			options = new TestablePackageManagementOptions();
			fakePackageRepositoryFactory = new FakePackageRepositoryFactory();
			fakeProjectSystemFactory = new FakeProjectSystemFactory();
			factory = new SharpDevelopPackageManagerFactory(fakePackageRepositoryFactory, fakeProjectSystemFactory, options);
		}
		public RegisteredPackageRepositories(
			IPackageRepositoryCache repositoryCache,
			PackageManagementOptions options)
		{
			this.repositoryCache = repositoryCache;
			this.options = options;
		}
        static PackageManagementServices()
        {
            options = new PackageManagementOptions();
            packageRepositoryCache = new PackageRepositoryCache(options);
            userAgentGenerator     = new UserAgentGeneratorForRepositoryRequests();
            userAgentGenerator.Register(packageRepositoryCache);
            progressProvider = new PackageManagementProgressProvider(packageRepositoryCache);
            registeredPackageRepositories         = new RegisteredPackageRepositories(packageRepositoryCache, options);
            projectTemplatePackageSources         = new RegisteredProjectTemplatePackageSources();
            projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(projectTemplatePackageSources);

            outputMessagesView  = new PackageManagementOutputMessagesView(packageManagementEvents);
            solution            = new PackageManagementSolution(registeredPackageRepositories, projectService, packageManagementEvents);
            packageActionRunner = new PackageActionRunner(packageManagementEvents);

            progressMonitorFactory        = new PackageManagementProgressMonitorFactory();
            backgroundPackageActionRunner = new BackgroundPackageActionRunner(progressMonitorFactory, packageManagementEvents, progressProvider);

            projectTargetFrameworkMonitor = new ProjectTargetFrameworkMonitor(projectService);
            packageCompatibilityHandler   = new PackageCompatibilityHandler();
            packageCompatibilityHandler.MonitorTargetFrameworkChanges(projectTargetFrameworkMonitor);

            updatedPackagesInSolution = new UpdatedPackagesInSolution(solution, registeredPackageRepositories, packageManagementEvents);

            projectOperations = new PackageManagementProjectOperations(solution, registeredPackageRepositories, backgroundPackageActionRunner, packageManagementEvents);

            InitializeCredentialProvider();
        }
		void CreateViewModel()
		{
			options = new TestablePackageManagementOptions();
			options.PackageSources.Clear();
			fakeFolderBrowser = new FakeFolderBrowser();
			viewModel = new RegisteredPackageSourcesViewModel(options, fakeFolderBrowser);
		}
 public SolutionPackageRepositoryFactory(
     ISharpDevelopPackageRepositoryFactory repositoryFactory,
     PackageManagementOptions options)
 {
     this.repositoryFactory = repositoryFactory;
     this.options           = options;
 }
		public TestableSolutionPackageRepository (
			ISolution solution,
			ISharpDevelopPackageRepositoryFactory repositoryFactory,
			PackageManagementOptions options)
			: base (solution, repositoryFactory, options)
		{
		}
 public SolutionPackageRepositoryPath(
     ISolution solution,
     PackageManagementOptions options)
 {
     this.solution         = solution;
     PackageRepositoryPath = GetSolutionPackageRepositoryPath(options);
 }
예제 #9
0
 public RegisteredPackageRepositories(
     IPackageRepositoryCache repositoryCache,
     PackageManagementOptions options)
 {
     this.repositoryCache = repositoryCache;
     this.options         = options;
 }
 public SolutionPackageRepositoryFactory(
     ISharpDevelopPackageRepositoryFactory repositoryFactory,
     PackageManagementOptions options)
 {
     this.repositoryFactory = repositoryFactory;
     this.options = options;
 }
		void CreatePackageManager(IProject project, PackageReferenceRepositoryHelper packageRefRepositoryHelper)
		{
			options = new TestablePackageManagementOptions();
			options.PackagesDirectory = "packages";
			
			repositoryPaths = new SolutionPackageRepositoryPath(project, options);
			var pathResolver = new DefaultPackagePathResolver(repositoryPaths.PackageRepositoryPath);
			
			fakeFileSystem = new FakeFileSystem();
			
			fakeFeedSourceRepository = new FakePackageRepository();
			fakeSolutionSharedRepository = packageRefRepositoryHelper.FakeSharedSourceRepository;
			
			fakePackageOperationResolverFactory = new FakePackageOperationResolverFactory();
			
			var fakeSolutionPackageRepository = new FakeSolutionPackageRepository();
			fakeSolutionPackageRepository.FileSystem = fakeFileSystem;
			fakeSolutionPackageRepository.PackagePathResolver = pathResolver;
			fakeSolutionPackageRepository.FakeSharedRepository = fakeSolutionSharedRepository;
			
			packageManager = new SharpDevelopPackageManager(fakeFeedSourceRepository,
				packageRefRepositoryHelper.FakeProjectSystem,
				fakeSolutionPackageRepository,
				fakePackageOperationResolverFactory);
		}
예제 #12
0
 public SharpDevelopPackageManagerFactory(ISharpDevelopPackageRepositoryFactory packageRepositoryFactory,
                                          ISharpDevelopProjectSystemFactory projectSystemFactory,
                                          PackageManagementOptions options)
 {
     this.packageRepositoryFactory = packageRepositoryFactory;
     this.projectSystemFactory     = projectSystemFactory;
     this.options = options;
 }
		public SharpDevelopPackageManagerFactory(ISharpDevelopPackageRepositoryFactory packageRepositoryFactory,
		                                         ISharpDevelopProjectSystemFactory projectSystemFactory,
		                                         PackageManagementOptions options)
		{
			this.packageRepositoryFactory = packageRepositoryFactory;
			this.projectSystemFactory = projectSystemFactory;
			this.options = options;
		}
		void CreateOptions()
		{
			var properties = new Properties();
			var projectService = new FakePackageManagementProjectService();
			fakeSettings = new FakeSettings();
			SettingsProvider settingsProvider = TestablePackageManagementOptions.CreateSettingsProvider(fakeSettings, projectService);
			options = new PackageManagementOptions(properties, settingsProvider);
		}
 public PackageRepositoryCache(
     PackageManagementOptions options,
     ISharpDevelopPackageRepositoryFactory factory)
 {
     this.options        = options;
     this.factory        = factory;
     this.recentPackages = options.RecentPackages;
 }
        public PackageRepositoryCache(
			PackageManagementOptions options,
			ISharpDevelopPackageRepositoryFactory factory)
        {
            this.options = options;
            this.factory = factory;
            this.recentPackages = options.RecentPackages;
        }
예제 #17
0
 public RegisteredPackageSourcesViewModel(
     PackageManagementOptions options,
     IFolderBrowser folderBrowser)
 {
     this.options       = options;
     this.folderBrowser = folderBrowser;
     CreateCommands();
 }
 public PackageRepositoryCache(
     PackageManagementOptions options,
     ISharpDevelopPackageRepositoryFactory factory)
     : this(
         options,
         MachineCache.Default,
         factory)
 {
 }
		public DesignTimeRegisteredPackageSourcesViewModel(PackageManagementOptions options)
			: base(options)
		{
			options.PackageSources.Add(new PackageSource("Source2", "http://sharpdevelop.codeplex.com"));
			options.PackageSources.Add(new PackageSource("Source3", "http://sharpdevelop.codeplex.com"));
			options.PackageSources.Add(new PackageSource("Source4", "http://sharpdevelop.codeplex.com"));
			options.PackageSources.Add(new PackageSource("Source5", "http://sharpdevelop.codeplex.com"));
			Load();
		}
        string GetSolutionPackageRepositoryPath(PackageManagementOptions options)
        {
            string customPath = options.GetCustomPackagesDirectory ();
            if (!String.IsNullOrEmpty (customPath)) {
                return customPath;
            }

            return Path.Combine (solution.Directory, options.PackagesDirectory);
        }
 public SolutionPackageRepository(
     ISolution solution,
     ISharpDevelopPackageRepositoryFactory repositoryFactory,
     PackageManagementOptions options)
 {
     this.repositoryFactory = repositoryFactory;
     repositoryPath         = new SolutionPackageRepositoryPath(solution, options);
     CreatePackagePathResolver();
     CreateFileSystem();
     CreateRepository(ConfigSettingsFileSystem.CreateConfigSettingsFileSystem(solution));
 }
        string GetSolutionPackageRepositoryPath(PackageManagementOptions options)
        {
            string customPath = options.GetCustomPackagesDirectory();

            if (!String.IsNullOrEmpty(customPath))
            {
                return(Path.GetFullPath(customPath));
            }

            return(Path.Combine(solution.BaseDirectory, options.PackagesDirectory));
        }
		public SolutionPackageRepository(
			Solution solution,
			ISharpDevelopPackageRepositoryFactory repositoryFactory,
			PackageManagementOptions options)
		{
			this.repositoryFactory = repositoryFactory;
			repositoryPath = new SolutionPackageRepositoryPath(solution, options);
			CreatePackagePathResolver();
			CreateFileSystem();
			CreateRepository(ConfigSettingsFileSystem.CreateConfigSettingsFileSystem(solution));
		}
        static PackageManagementServices()
        {
            options = new PackageManagementOptions();
            packageRepositoryCache = new PackageRepositoryCache(options.PackageSources, options.RecentPackages);
            registeredPackageRepositories = new RegisteredPackageRepositories(packageRepositoryCache, options);
            //projectTemplatePackageSources = new RegisteredProjectTemplatePackageSources();
            //projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(packageRepositoryCache, projectTemplatePackageSources);

            outputMessagesView = new PackageManagementOutputMessagesView(packageManagementEvents);
            solution = new PackageManagementSolution(registeredPackageRepositories, packageManagementEvents);
            packageActionRunner = new PackageActionRunner(packageManagementEvents);
        }
		public PackageManagementService(
			PackageManagementOptions options,
			IPackageRepositoryCache packageRepositoryCache,
			IPackageManagerFactory packageManagerFactory,
			IPackageManagementProjectService projectService,
			IPackageManagementOutputMessagesView outputMessagesView)
		{
			this.options = options;
			this.packageRepositoryCache = packageRepositoryCache;
			this.packageManagerFactory = packageManagerFactory;
			this.projectService = projectService;
			this.outputMessagesView = outputMessagesView;
		}
		void CreateViewModel ()
		{
			var properties = new Properties ();
			var settings = new FakeSettings ();
			var options = new PackageManagementOptions (properties, settings);
			packageSources = options.PackageSources;
			packageSources.Clear ();

			var cache = new PackageRepositoryCache (packageSources, new RecentPackageInfo [0]);
			registeredRepositories = new RegisteredPackageRepositories (cache, options);

			viewModel = new RegisteredPackageSourcesViewModel (registeredRepositories);
		}
 public PackageManagementService(
     PackageManagementOptions options,
     IPackageRepositoryCache packageRepositoryCache,
     IPackageManagerFactory packageManagerFactory,
     IPackageManagementProjectService projectService,
     IPackageManagementOutputMessagesView outputMessagesView)
 {
     this.options = options;
     this.packageRepositoryCache = packageRepositoryCache;
     this.packageManagerFactory  = packageManagerFactory;
     this.projectService         = projectService;
     this.outputMessagesView     = outputMessagesView;
 }
        string GetSolutionPackageRepositoryPath(PackageManagementOptions options)
        {
            var       settingsProvider = new SettingsProvider2();
            ISettings settings         = settingsProvider.LoadSettings();

            string customPath = settings.GetRepositoryPath();

            if (!String.IsNullOrEmpty(customPath))
            {
                return(Path.GetFullPath(customPath));
            }

            return(Path.Combine(solution.BaseDirectory, options.PackagesDirectory));
        }
        static PackageManagementServices()
        {
            options = new PackageManagementOptions();
            packageRepositoryCache = new PackageRepositoryCache(options.PackageSources, options.RecentPackages);
            userAgentGenerator = new UserAgentGeneratorForRepositoryRequests(packageRepositoryCache);
            registeredPackageRepositories = new RegisteredPackageRepositories(packageRepositoryCache, options);
            //projectTemplatePackageSources = new RegisteredProjectTemplatePackageSources();
            //projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(packageRepositoryCache, projectTemplatePackageSources);

            outputMessagesView = new PackageManagementOutputMessagesView(packageManagementEvents);
            solution = new PackageManagementSolution(registeredPackageRepositories, packageManagementEvents);
            packageActionRunner = new PackageActionRunner(packageManagementEvents);

            InitializeCredentialProvider();
        }
        static PackageManagementServices()
        {
            options = new PackageManagementOptions();
            packageRepositoryCache        = new PackageRepositoryCache(options.PackageSources, options.RecentPackages);
            userAgentGenerator            = new UserAgentGeneratorForRepositoryRequests(packageRepositoryCache);
            registeredPackageRepositories = new RegisteredPackageRepositories(packageRepositoryCache, options);
            //projectTemplatePackageSources = new RegisteredProjectTemplatePackageSources();
            //projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(packageRepositoryCache, projectTemplatePackageSources);

            outputMessagesView  = new PackageManagementOutputMessagesView(packageManagementEvents);
            solution            = new PackageManagementSolution(registeredPackageRepositories, packageManagementEvents);
            packageActionRunner = new PackageActionRunner(packageManagementEvents);

            InitializeCredentialProvider();
        }
		void CreateSolution(PackageManagementOptions options)
		{
			testProject = ProjectHelper.CreateTestProject();
			fakeRegisteredPackageRepositories = new FakeRegisteredPackageRepositories();
			fakeProjectFactory = new FakePackageManagementProjectFactory();
			fakeProjectService = new FakePackageManagementProjectService();
			var packageManagementEvents = new FakePackageManagementEvents();
			
			fakeProjectService.CurrentProject = testProject;
			solution =
				new PackageManagementSolution(
					fakeRegisteredPackageRepositories,
					packageManagementEvents,
					fakeProjectService,
					fakeProjectFactory);
		}
		void CreatePackageManagementService(PackageManagementOptions options)
		{
			testProject = ProjectHelper.CreateTestProject();
			fakePackageRepositoryFactory = new FakePackageRepositoryFactory();
			fakePackageManagerFactory = new FakePackageManagerFactory();
			fakeProjectService = new FakePackageManagementProjectService();
			fakeOutputMessagesView = new FakePackageManagementOutputMessagesView();
			fakeProjectService.CurrentProject = testProject;
			packageManagementService = 
				new PackageManagementService(options,
					fakePackageRepositoryFactory,
					fakePackageManagerFactory,
					fakeProjectService,
					fakeOutputMessagesView);

			installPackageHelper = new InstallPackageHelper(packageManagementService);
		}
        public PackageManagementOptionsViewModel(
            PackageManagementOptions options,
            IRecentPackageRepository recentPackageRepository,
            IMachinePackageCache machinePackageCache,
            IProcess process)
        {
            this.options = options;
            this.recentPackageRepository = recentPackageRepository;
            this.machinePackageCache     = machinePackageCache;
            this.process = process;

            this.HasNoRecentPackages     = !RecentPackageRepositoryHasPackages();
            this.HasNoCachedPackages     = !MachinePackageCacheHasPackages();
            this.IsPackageRestoreEnabled = options.IsPackageRestoreEnabled;

            CreateCommands();
        }
예제 #34
0
        public PackageManagementOptionsViewModel(
            PackageManagementOptions options,
            IRecentPackageRepository recentPackageRepository,
            IMachinePackageCache machinePackageCache,
            IProcess process)
        {
            this.options = options;
            this.recentPackageRepository = recentPackageRepository;
            this.machinePackageCache     = machinePackageCache;
            this.process = process;

            this.HasNoRecentPackages = !RecentPackageRepositoryHasPackages();
            this.HasNoCachedPackages = !MachinePackageCacheHasPackages();
            this.IsAutomaticPackageRestoreOnOpeningSolutionEnabled = options.IsAutomaticPackageRestoreOnOpeningSolutionEnabled;
            this.IsCheckForPackageUpdatesOnOpeningSolutionEnabled  = options.IsCheckForPackageUpdatesOnOpeningSolutionEnabled;

            CreateCommands();
        }
예제 #35
0
		static PackageManagementServices()
		{
			options = new PackageManagementOptions();
			packageRepositoryCache = new PackageRepositoryCache(options.PackageSources, options.RecentPackages);
			registeredPackageRepositories = new RegisteredPackageRepositories(packageRepositoryCache, options);
			projectTemplatePackageSources = new RegisteredProjectTemplatePackageSources();
			projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(packageRepositoryCache, projectTemplatePackageSources);
			
			outputMessagesView = new PackageManagementOutputMessagesView(packageManagementEvents);
			projectBrowserRefresher = new ProjectBrowserRefresher(projectService, packageManagementEvents);
			solution = new PackageManagementSolution(registeredPackageRepositories, packageManagementEvents);
			
			consoleHostProvider = new PackageManagementConsoleHostProvider(solution, registeredPackageRepositories);
			runPackageInitializationScripts = new RunPackageInitializationScriptsOnSolutionOpen(projectService);
			resetPowerShellWorkingDirectory = new ResetPowerShellWorkingDirectoryOnSolutionClosed(projectService, ConsoleHost);
			var consolePackageActionRunner = new ConsolePackageActionRunner(ConsoleHost, packageActionsToRun);
			packageActionRunner = new PackageActionRunner(consolePackageActionRunner, packageManagementEvents);
		}
		void CreatePackageManager(IProject project, PackageReferenceRepositoryHelper packageRefRepositoryHelper)
		{
			options = new PackageManagementOptions(new Properties());
			options.PackagesDirectory = "packages";
			
			repositoryPaths = new PackageRepositoryPaths(project, options);
			var pathResolver = new DefaultPackagePathResolver(repositoryPaths.SolutionPackagesPath);
			
			fakeFileSystem = new FakeFileSystem();
			
			fakeFeedSourceRepository = new FakePackageRepository();
			fakeSolutionSharedRepository = packageRefRepositoryHelper.FakeSharedSourceRepository;
			
			packageManager = new SharpDevelopPackageManager(fakeFeedSourceRepository,
				packageRefRepositoryHelper.FakeProjectSystem,
				fakeFileSystem,
				fakeSolutionSharedRepository,
				pathResolver);
		}
        static PackageManagementServices()
        {
            options = new PackageManagementOptions();
            packageRepositoryCache                = new PackageRepositoryCache(options.PackageSources, options.RecentPackages);
            registeredPackageRepositories         = new RegisteredPackageRepositories(packageRepositoryCache, options);
            projectTemplatePackageSources         = new RegisteredProjectTemplatePackageSources();
            projectTemplatePackageRepositoryCache = new ProjectTemplatePackageRepositoryCache(packageRepositoryCache, projectTemplatePackageSources);

            outputMessagesView      = new PackageManagementOutputMessagesView(packageManagementEvents);
            projectBrowserRefresher = new ProjectBrowserRefresher(projectService, packageManagementEvents);
            solution = new PackageManagementSolution(registeredPackageRepositories, packageManagementEvents);

            consoleHostProvider             = new PackageManagementConsoleHostProvider(solution, registeredPackageRepositories);
            runPackageInitializationScripts = new RunPackageInitializationScriptsOnSolutionOpen(projectService);
            resetPowerShellWorkingDirectory = new ResetPowerShellWorkingDirectoryOnSolutionClosed(projectService, ConsoleHost);
            var consolePackageActionRunner = new ConsolePackageActionRunner(ConsoleHost, packageActionsToRun);

            packageActionRunner = new PackageActionRunner(consolePackageActionRunner, packageManagementEvents);
        }
		void CreateSolution (PackageManagementOptions options)
		{
			testProject = ProjectHelper.CreateTestProject ();
			fakeRegisteredPackageRepositories = new FakeRegisteredPackageRepositories ();
			fakeProjectFactory = new FakePackageManagementProjectFactory ();
			fakeProjectService = new FakePackageManagementProjectService ();

			fakeProjectService.CurrentProject = testProject;
			fakeProjectService.OpenSolution = testProject.ParentSolution;

			fakeSolutionPackageRepositoryFactory = new FakeSolutionPackageRepositoryFactory ();
			fakeSolutionPackageRepository = fakeSolutionPackageRepositoryFactory.FakeSolutionPackageRepository;

			solution =
				new PackageManagementSolution (
				fakeRegisteredPackageRepositories,
				fakeProjectService,
				fakeProjectFactory,
				fakeSolutionPackageRepositoryFactory);
		}
		void CreateOptions(Properties properties, FakeSettings fakeSettings)
		{
			CreateSettingsProvider(fakeSettings);
			options = new PackageManagementOptions(properties, settingsProvider);
		}
예제 #40
0
 public SolutionPackageRepositoryPath(Solution solution, PackageManagementOptions options)
 {
     packagesRelativeDirectory = options.PackagesDirectory;
     this.solution             = solution;
     GetSolutionPackageRepositoryPath();
 }
 public SolutionPackageRepositoryPath2(Project project, PackageManagementOptions options)
     : this(project.ParentSolution, options)
 {
 }
		void CreateOptions()
		{
			options = new TestablePackageManagementOptions();
		}
		void CreateOptions(Properties properties, FakeSettings fakeSettings)
		{
			options = new PackageManagementOptions(properties, fakeSettings);
		}
		void CreateOptions(FakeSettings fakeSettings)
		{
			CreateProperties();
			options = new PackageManagementOptions(properties, fakeSettings);
		}
예제 #45
0
 public PackageManagementOptionsViewModel(PackageManagementOptions options)
 {
     this.options = options;
     CreateCommands();
 }
		void CreateOptions()
		{
			var properties = new Properties();
			fakeSettings = new FakeSettings();
			options = new PackageManagementOptions(properties, fakeSettings);
		}
		void CreateViewModel(PackageManagementOptions options)
		{
			viewModel = new PackageManagementOptionsViewModel(options, fakeRecentRepository, fakeMachineCache, fakeProcess);			
		}
		public SolutionPackageRepositoryPath(IProject project, PackageManagementOptions options)
			: this(project.ParentSolution, options)
		{
		}
		public SolutionPackageRepositoryPath(Solution solution, PackageManagementOptions options)
		{
			packagesRelativeDirectory = options.PackagesDirectory;
			this.solution = solution;
			GetSolutionPackageRepositoryPath();
		}
예제 #50
0
 public RegisteredPackageSourcesViewModel(
     PackageManagementOptions options)
     : this(options, new FolderBrowser())
 {
 }
 public PackageRepositoryCache(PackageManagementOptions options)
     : this(
         options,
         new SharpDevelopPackageRepositoryFactory())
 {
 }
예제 #52
0
 public PackageRepositoryPaths(IProject project, PackageManagementOptions options)
 {
     packagesRelativeDirectory = options.PackagesDirectory;
     this.project = project;
     GetPaths();
 }