Ejemplo n.º 1
0
        public Workspace CreateWorkspace(Workspace workspace)
        {
            if (workspace != null)
            {
                var workspaceDirectory = _fileSystem.MakeAbsolute(workspace.Directory);

                var configDirectory = PathBuilder.Combine(workspaceDirectory, Directories.Config, Directories.Workbench);

                _fileSystem.DirectoryCreate(workspaceDirectory);
                _fileSystem.DirectoryCreate(configDirectory);

                var workspaceProfilePath = _profileRepository.CurrentWorkspace(workspaceDirectory);
                _resourceRepository.CreateResource(workspaceProfilePath, Files.WorkspacePs1);

                var discoveryConfigPath = PathBuilder.Combine(configDirectory, Files.DiscoveryJson);
                _resourceRepository.CreateResource(discoveryConfigPath, Files.DiscoveryWSJson);

                var shortcutConfigPath = PathBuilder.Combine(configDirectory, Files.ShortcutJson);
                _resourceRepository.CreateResource(shortcutConfigPath, Files.ShortcutWSJson);

                var applicationConfigPath = PathBuilder.Combine(configDirectory, Files.ApplicationJson);
                _resourceRepository.CreateResource(applicationConfigPath, Files.ApplicationWSJson);

                var backupConfigPath = PathBuilder.Combine(configDirectory, Files.BackupJson);
                _resourceRepository.CreateResource(backupConfigPath, Files.BackupWSJson);
            }

            return(workspace);
        }
        public void Start()
        {
            var userspaceResourcePath = PathBuilder.Combine(
                _sharedContext.CurrentUserspaceDirectory, Directories.Config, Directories.SourceControl, Files.RepositoryJson);

            _resourceRepository.CreateResource(userspaceResourcePath, Files.RepositoryJson);
        }
        public async Task Init()
        {
            await TestCleaner.CleanDatabase();

            var numTestRows = 20;

            IDataGateway            dataGateway            = new SQLServerGateway();
            IConnectionStringData   connectionString       = new ConnectionStringData();
            IResourceRepository     resourceRepository     = new ResourceRepository(dataGateway, connectionString);
            IAccessPolicyRepository accessPolicyRepository = new AccessPolicyRepository(dataGateway, connectionString);

            for (int i = 1; i <= numTestRows; ++i)
            {
                ResourceModel resourceModel = new ResourceModel();
                resourceModel.Id   = i;
                resourceModel.Name = "TestResource" + i;

                AccessPolicyModel accessPolicyModel = new AccessPolicyModel();
                accessPolicyModel.Id         = i;
                accessPolicyModel.Name       = "TestAccessPolicy" + i;
                accessPolicyModel.ResourceId = i;
                accessPolicyModel.Priority   = i % 4;

                await resourceRepository.CreateResource(resourceModel);

                await accessPolicyRepository.CreateAccessPolicy(accessPolicyModel);
            }
        }
Ejemplo n.º 4
0
        public async Task Init()
        {
            await TestCleaner.CleanDatabase();

            var numTestRows = 20;

            IDataGateway                   dataGateway                   = new SQLServerGateway();
            IConnectionStringData          connectionString              = new ConnectionStringData();
            IScopeRepository               scopeRepository               = new ScopeRepository(dataGateway, connectionString);
            IResourceRepository            resourceRepository            = new ResourceRepository(dataGateway, connectionString);
            IClaimRepository               claimRepository               = new ClaimRepository(dataGateway, connectionString);
            IAccessPolicyRepository        accessPolicyRepository        = new AccessPolicyRepository(dataGateway, connectionString);
            IAccessPolicyPairingRepository accessPolicyPairingRepository = new AccessPolicyPairingRepository(dataGateway, connectionString);


            for (int i = 1; i <= numTestRows; ++i)
            {
                ResourceModel resourceModel = new ResourceModel();
                resourceModel.Id   = i;
                resourceModel.Name = "TestResource" + i;

                ScopeModel scopeModel = new ScopeModel();
                scopeModel.Id          = i;
                scopeModel.Type        = "TestScope" + i;
                scopeModel.Description = "TestDescription" + i;

                ClaimModel claimModel = new ClaimModel();
                claimModel.Id        = i;
                claimModel.Type      = "TestClaim" + i;
                claimModel.Value     = "TestDescription" + i;
                claimModel.IsDefault = true;

                var resourceId = await resourceRepository.CreateResource(resourceModel);

                var claimId = await claimRepository.CreateClaim(claimModel);

                var scopeId = await scopeRepository.CreateScope(scopeModel);

                AccessPolicyModel accessPolicyModel = new AccessPolicyModel();
                accessPolicyModel.Id         = i;
                accessPolicyModel.Name       = "TestAccessPolicy" + i;
                accessPolicyModel.ResourceId = resourceId;
                accessPolicyModel.Priority   = i % 4;

                var accessPolicyId = await accessPolicyRepository.CreateAccessPolicy(accessPolicyModel);

                AccessPolicyPairingModel accessPolicyPairingModel = new AccessPolicyPairingModel();
                accessPolicyPairingModel.Id             = i;
                accessPolicyPairingModel.ScopeId        = scopeId;
                accessPolicyPairingModel.ClaimId        = claimId;
                accessPolicyPairingModel.AccessPolicyId = accessPolicyId;

                await accessPolicyPairingRepository.CreateAccessPolicyPairing(accessPolicyPairingModel);
            }
        }
        public void InitializeToolkitProject(Project project)
        {
            if (project == null)
            {
                throw new ArgumentNullException(nameof(project));
            }

            var model = TemplateModel.Object(project);

            var slnRes = _resourceRepository.CreateResource(project.SolutionPath, Files.ProjectSln);

            slnRes.Content = _templateProcessor.Transform(slnRes.Content, model);

            var coreRes = _resourceRepository.CreateResource(project.CoreProjectPath, Files.CoreCsproj);

            coreRes.Content = _templateProcessor.Transform(coreRes.Content, model);

            var commandRes = _resourceRepository.CreateResource(project.CommandProjectPath, Files.CommandCsproj);

            commandRes.Content = _templateProcessor.Transform(commandRes.Content, model);

            var manifestRes = _resourceRepository.CreateResource(project.ManifestPath, Files.ManifestPsd1);

            manifestRes.Content = _templateProcessor.Transform(manifestRes.Content, model);

            var loadertRes = _resourceRepository.CreateResource(project.LoaderPath, Files.LoaderPsm1);

            loadertRes.Content = _templateProcessor.Transform(loadertRes.Content, model);

            _resourceRepository.CreateResource(project.GitignorePath, Files.Gitignore);

            _fileSystem.FileCreate(project.ChangeLogPath);
            _fileSystem.FileCreate(project.LicencePath);
            _fileSystem.FileCreate(project.ReadmePath);
        }
        private void WriteShortcuts(string path, IEnumerable <Shortcut> shortcuts, bool append)
        {
            var shortcutsResource = _resourceRepository.CreateResource(path);

            if (append && shortcutsResource.CanRead)
            {
                var existingShortcuts = shortcutsResource.Read <List <Shortcut> >();
                if (existingShortcuts != null)
                {
                    shortcuts = existingShortcuts.Concat(shortcuts);
                }
            }

            shortcuts = shortcuts.ToList();
            shortcutsResource.Write((List <Shortcut>)shortcuts);
        }
Ejemplo n.º 7
0
        public async Task Init()
        {
            await TestCleaner.CleanDatabase();

            var numTestRows = 20;

            IDataGateway          dataGateway        = new SQLServerGateway();
            IConnectionStringData connectionString   = new ConnectionStringData();
            IResourceRepository   resourceRepository = new ResourceRepository(dataGateway, connectionString);

            for (int i = 1; i <= numTestRows; ++i)
            {
                Models.User_Access_Control.ResourceModel resourceModel = new Models.User_Access_Control.ResourceModel();
                resourceModel.Id   = i;
                resourceModel.Name = "TestResource" + i;

                await resourceRepository.CreateResource(resourceModel);
            }
        }
        public async Task CreateResource_ResourceExists_ResourceNameCorrect(int expectedId, string expectedName)
        {
            //Arrange
            ResourceModel resourceModel = new ResourceModel();

            resourceModel.Name = expectedName;

            IResourceRepository resourceRepository = new ResourceRepository(new SQLServerGateway(), new ConnectionStringData());

            //Act
            var id = await resourceRepository.CreateResource(resourceModel);

            var resource = await resourceRepository.GetResourceById(id);

            var actualName = resource.Name;

            //Assert
            Assert.IsTrue(actualName == expectedName);
        }
        public Userspace CreateUserspace(Userspace userspace)
        {
            if (userspace != null)
            {
                _fileSystem.DirectoryCreate(userspace.Directory);

                var userspaceProfilePath = _profileRepository.CurrentUserspace(userspace.Directory);
                _resourceRepository.CreateResource(userspaceProfilePath, Files.UserspacePs1);

                var allUserspacesProfilePath = _profileRepository.AllUserspaces();
                _resourceRepository.CreateResource(allUserspacesProfilePath, Files.AllUserspacesPs1);

                var allWorkspacesProfile = _profileRepository.AllWorkspaces();
                _resourceRepository.CreateResource(allWorkspacesProfile, Files.AllWorkspacesPs1);

                var workspacesProfilePath = _profileRepository.Workspaces(userspace.Directory);
                _resourceRepository.CreateResource(workspacesProfilePath, Files.WorkspacesPs1);


                var configDirectory = PathBuilder.Combine(userspace.Directory, Directories.Config, Directories.Workbench);
                _fileSystem.DirectoryCreate(configDirectory);

                var discoveryConfigPath = PathBuilder.Combine(configDirectory, Files.DiscoveryJson);
                _resourceRepository.CreateResource(discoveryConfigPath, Files.DiscoveryUSJson);

                var shortcutConfigPath = PathBuilder.Combine(configDirectory, Files.ShortcutJson);
                _resourceRepository.CreateResource(shortcutConfigPath, Files.ShortcutUSJson);

                var applicationConfigPath = PathBuilder.Combine(configDirectory, Files.ApplicationJson);
                _resourceRepository.CreateResource(applicationConfigPath, Files.ApplicationUSJson);

                var backupConfigPath = PathBuilder.Combine(configDirectory, Files.BackupJson);
                _resourceRepository.CreateResource(backupConfigPath, Files.BackupUSJson);
            }

            return(userspace);
        }