StudioResourceRepository BuildExplorerItems(IResourceRepository resourceRepository) { var resourceModels = resourceRepository.All(); var localhostItemModel = new ExplorerItemModel { DisplayName = "localhost", EnvironmentId = Guid.Empty, ResourceType = Common.Interfaces.Data.ResourceType.Server }; if (resourceModels != null) { foreach (var resourceModel in resourceModels) { var resourceItemModel = new ExplorerItemModel { ResourceId = resourceModel.ID, ResourcePath = resourceModel.Category, EnvironmentId = Guid.Empty, DisplayName = resourceModel.ResourceName }; Common.Interfaces.Data.ResourceType correctTyping = Common.Interfaces.Data.ResourceType.WorkflowService; switch (resourceModel.ResourceType) { case ResourceType.WorkflowService: correctTyping = Common.Interfaces.Data.ResourceType.WorkflowService; break; case ResourceType.Service: correctTyping = Common.Interfaces.Data.ResourceType.DbService; break; case ResourceType.Source: correctTyping = Common.Interfaces.Data.ResourceType.WebSource; break; } resourceItemModel.ResourceType = correctTyping; var categoryItem = localhostItemModel.Children.FirstOrDefault(model => model.DisplayName == resourceModel.Category); if (categoryItem == null) { categoryItem = new ExplorerItemModel { Parent = localhostItemModel, DisplayName = resourceModel.Category, EnvironmentId = Guid.Empty, ResourceType = Common.Interfaces.Data.ResourceType.Folder, ResourcePath = "" }; localhostItemModel.Children.Add(categoryItem); } resourceItemModel.Parent = categoryItem; categoryItem.Children.Add(resourceItemModel); } } var studioResourceRepository = new StudioResourceRepository(localhostItemModel, _Invoke); var explorerResourceRepository = new Mock <IClientExplorerResourceRepository>().Object; studioResourceRepository.GetExplorerProxy = guid => explorerResourceRepository; return(studioResourceRepository); }
IStudioResourceRepository BuildExplorerItems(IResourceRepository resourceRepository,bool mockClone = true) { var resourceModels = resourceRepository.All(); var localhostItemModel = new ExplorerItemModel(new Mock<IConnectControlSingleton>().Object, new Mock<IStudioResourceRepository>().Object) { DisplayName = "localhost", EnvironmentId = Guid.Empty, ResourceType = Common.Interfaces.Data.ResourceType.Server }; if(resourceModels != null) { foreach(var resourceModel in resourceModels) { var resourceItemModel = new ExplorerItemModel(new Mock<IConnectControlSingleton>().Object, new Mock<IStudioResourceRepository>().Object) { ResourceId = resourceModel.ID, ResourcePath = resourceModel.Category, EnvironmentId = Guid.Empty, DisplayName = resourceModel.ResourceName }; Common.Interfaces.Data.ResourceType correctTyping = Common.Interfaces.Data.ResourceType.WorkflowService; switch(resourceModel.ResourceType) { case ResourceType.WorkflowService: correctTyping = Common.Interfaces.Data.ResourceType.WorkflowService; break; case ResourceType.Service: correctTyping = Common.Interfaces.Data.ResourceType.DbService; break; case ResourceType.Source: correctTyping = Common.Interfaces.Data.ResourceType.WebSource; break; } resourceItemModel.ResourceType = correctTyping; var categoryItem = localhostItemModel.Children.FirstOrDefault(model => model.DisplayName == resourceModel.Category); if(categoryItem == null) { categoryItem = new ExplorerItemModel(new Mock<IConnectControlSingleton>().Object, new Mock<IStudioResourceRepository>().Object) { Parent = localhostItemModel, DisplayName = resourceModel.Category, EnvironmentId = Guid.Empty, ResourceType = Common.Interfaces.Data.ResourceType.Folder, ResourcePath = "" }; localhostItemModel.Children.Add(categoryItem); } resourceItemModel.Parent = categoryItem; categoryItem.Children.Add(resourceItemModel); } } var studioResourceRepository = new StudioResourceRepository(localhostItemModel, _Invoke); if (mockClone) studioResourceRepository.ExplorerItemModelClone = a => a; else studioResourceRepository.ExplorerItemModelClone = a => a.Clone( new Mock<IConnectControlSingleton>().Object,studioResourceRepository); var explorerResourceRepository = new Mock<IClientExplorerResourceRepository>().Object; studioResourceRepository.GetExplorerProxy = guid => explorerResourceRepository; return studioResourceRepository; }
StudioResourceRepository BuildExplorerItems(IResourceRepository resourceRepository) { var resourceModels = resourceRepository.All(); var localhostItemModel = new ExplorerItemModel { DisplayName = "localhost", EnvironmentId = Guid.Empty, ResourceType = ResourceType.Server }; if(resourceModels != null) { foreach(var resourceModel in resourceModels) { var resourceItemModel = new ExplorerItemModel { ResourceId = resourceModel.ID, ResourcePath = resourceModel.Category, EnvironmentId = Guid.Empty, DisplayName = resourceModel.ResourceName }; ResourceType correctTyping = ResourceType.WorkflowService; switch(resourceModel.ResourceType) { case Studio.Core.AppResources.Enums.ResourceType.WorkflowService: correctTyping = ResourceType.WorkflowService; break; case Studio.Core.AppResources.Enums.ResourceType.Service: correctTyping = ResourceType.DbService; break; case Studio.Core.AppResources.Enums.ResourceType.Source: correctTyping = ResourceType.WebSource; break; } resourceItemModel.ResourceType = correctTyping; var categoryItem = localhostItemModel.Children.FirstOrDefault(model => model.DisplayName == resourceModel.Category); if(categoryItem == null) { categoryItem = new ExplorerItemModel { Parent = localhostItemModel, DisplayName = resourceModel.Category, EnvironmentId = Guid.Empty, ResourceType = ResourceType.Folder, ResourcePath = "" }; localhostItemModel.Children.Add(categoryItem); } resourceItemModel.Parent = categoryItem; categoryItem.Children.Add(resourceItemModel); } } var studioResourceRepository = new StudioResourceRepository(localhostItemModel, _Invoke); var explorerResourceRepository = new Mock<IClientExplorerResourceRepository>().Object; studioResourceRepository.GetExplorerProxy = guid => explorerResourceRepository; return studioResourceRepository; }
public async Task <IEnumerable <DomainResource?> > GetAllByType(string type) { return(string.IsNullOrWhiteSpace(type) ? (await _resources.All()).Select(_mapper.Map <DomainResource>) : (await _resources.ByType(type)).Select(_mapper.Map <DomainResource>)); }