Пример #1
0
        public BrowserHubWindowViewModel(
            IApplicationController applicationController,
            IComparer <FileSystemArtifactViewModel> viewModelComparer,
            IUserInteractionService userInteractionService,
            IVirtualFileSystemInstanceManager virtualFileSystemInstanceManager,
            IDispatcher dispatcher)
        {
            if (applicationController == null)
            {
                throw new ArgumentNullException("applicationController");
            }
            if (viewModelComparer == null)
            {
                throw new ArgumentNullException("viewModelComparer");
            }
            if (userInteractionService == null)
            {
                throw new ArgumentNullException("userInteractionService");
            }
            if (virtualFileSystemInstanceManager == null)
            {
                throw new ArgumentNullException("virtualFileSystemInstanceManager");
            }
            if (dispatcher == null)
            {
                throw new ArgumentNullException("dispatcher");
            }

            _applicationController            = applicationController;
            _userInteractionService           = userInteractionService;
            _virtualFileSystemInstanceManager = virtualFileSystemInstanceManager;
            _dispatcher        = dispatcher;
            _viewModelComparer = viewModelComparer;
        }
Пример #2
0
        public ArtifactImporter(VirtualFileSystem fileSystem, IVirtualFileSystemInstanceManager virtualFileSystemInstanceManager, TaskCounter taskCounter)
        {
            if (fileSystem == null)
            {
                throw new ArgumentNullException("fileSystem");
            }
            if (virtualFileSystemInstanceManager == null)
            {
                throw new ArgumentNullException("virtualFileSystemInstanceManager");
            }
            if (taskCounter == null)
            {
                throw new ArgumentNullException("taskCounter");
            }

            _fileSystem = fileSystem;
            _virtualFileSystemInstanceManager = virtualFileSystemInstanceManager;
            _taskCounter = taskCounter;
        }
        public BrowserWindowViewModel(
            VirtualFileSystem virtualSystemCurrentlyBrowsed,
            IApplicationController applicationController,
            IComparer <FileSystemArtifactViewModel> viewModelSortingComparer,
            IUserInteractionService userInteractionService,
            string diskBrowsedLocation,
            IEqualityComparer <string> fileSystemArtifactNameComparer,
            IFileSystemArtifactViewModelVisitor deletingVisitor,
            IFileSystemArtifactNamesValidator artifactNamesValidator,
            IFileSystemArtifactViewModelVisitor renamingVisitor,
            INewArtifactCreator newArtifactCreator,
            IVirtualFileSystemInstanceManager virtualFileSystemInstanceManager,
            IFileSystemArtifactViewModelVisitor movingVisitor,
            IArtifactImporter artifactImporter,
            TaskCounter taskCounter,
            IDispatcher dispatcher)
        {
            if (virtualSystemCurrentlyBrowsed == null)
            {
                throw new ArgumentNullException("virtualSystemCurrentlyBrowsed");
            }
            if (applicationController == null)
            {
                throw new ArgumentNullException("applicationController");
            }
            if (viewModelSortingComparer == null)
            {
                throw new ArgumentNullException("viewModelSortingComparer");
            }
            if (userInteractionService == null)
            {
                throw new ArgumentNullException("userInteractionService");
            }
            if (diskBrowsedLocation == null)
            {
                throw new ArgumentNullException("diskBrowsedLocation");
            }
            if (fileSystemArtifactNameComparer == null)
            {
                throw new ArgumentNullException("fileSystemArtifactNameComparer");
            }
            if (deletingVisitor == null)
            {
                throw new ArgumentNullException("deletingVisitor");
            }
            if (artifactNamesValidator == null)
            {
                throw new ArgumentNullException("artifactNamesValidator");
            }
            if (renamingVisitor == null)
            {
                throw new ArgumentNullException("renamingVisitor");
            }
            if (newArtifactCreator == null)
            {
                throw new ArgumentNullException("newArtifactCreator");
            }
            if (virtualFileSystemInstanceManager == null)
            {
                throw new ArgumentNullException("virtualFileSystemInstanceManager");
            }
            if (movingVisitor == null)
            {
                throw new ArgumentNullException("movingVisitor");
            }
            if (artifactImporter == null)
            {
                throw new ArgumentNullException("artifactImporter");
            }
            if (dispatcher == null)
            {
                throw new ArgumentNullException("dispatcher");
            }

            this.CurrentFolderContents     = new ObservableCollection <FileSystemArtifactViewModel>();
            _virtualSystemCurrentlyBrowsed = virtualSystemCurrentlyBrowsed;
            _taskCounter        = taskCounter;
            _dispatcher         = dispatcher;
            _artifactImporter   = artifactImporter;
            _movingVisitor      = movingVisitor;
            _renamingVisitor    = renamingVisitor;
            _newArtifactCreator = newArtifactCreator;
            _virtualFileSystemInstanceManager = virtualFileSystemInstanceManager;
            _userInteractionService           = userInteractionService;
            _diskBrowsedLocation            = diskBrowsedLocation;
            _fileSystemArtifactNameComparer = fileSystemArtifactNameComparer;
            _deletingVisitor          = deletingVisitor;
            _artifactNamesValidator   = artifactNamesValidator;
            _applicationController    = applicationController;
            _viewModelSortingComparer = viewModelSortingComparer;

            this.CurrentFolderPath = VirtualFileSystem.Root;

            _tasks = new ObservableCollection <TaskViewModel>();

            this.Tasks = new ReadOnlyObservableCollection <TaskViewModel>(_tasks);

            this.RefreshCurrentFolderContentsFallingBackToRootIfNecessary();

            this.FileSearchPattern = new FileSearchPatternViewModel();

            this.IsRefreshEnabled = true;
        }