/// <inheritdoc /> public Project(ProjectEnumerator projectEnumerator) : base(projectEnumerator) { Filter = projectEnumerator.GetFilter(); Priority = projectEnumerator.GetPriority(); IsBuildTool = projectEnumerator is BuildToolProjectEnumerator; if (!IsBuildTool) { SourcesFilterOrigin = projectEnumerator.GetSourceFiltersOrigin(); BuildType = new CollectorContainer <ProjectBuildType>(projectEnumerator.GetBuildType); OutputPath = new CollectorContainer <string>((p, c) => Path.Combine(projectEnumerator.GetOutputDir(p, c), projectEnumerator.GetOutputFileName(p, c))); ImportLibraryOutputPath = new CollectorContainer <string>(projectEnumerator.GetImportLibraryOutputPath); Files = new CollectorContainer <ProjectFile[]>((p, c) => projectEnumerator.EnumerateSourceFiles(p, c).ToArray()); HeaderDirectories = new CollectorContainer <string[]>((p, c) => projectEnumerator.EnumerateHeaderDirectories(p, c).ToArray()); Dependencies = new CollectorContainer <Dependency[]>((p, c) => projectEnumerator.EnumerateDependencies(p, c).ToArray()); Macros = new CollectorContainer <ProjectMacro[]>((p, c) => projectEnumerator.EnumerateMacros(p, c).ToArray()); } else { GeneratorOutputPath = ((BuildToolProjectEnumerator)projectEnumerator).GetProjectFile(); } }
/// <summary> /// Include individual bff configuration file for each project /// </summary> private void createProjectTargets() { /// Here the dependencies of the projects are considered. /// Step 1. Store all project config path to ProjectPriority dictionary List <ProjectInfo> waitedForProcess = new List <ProjectInfo>(); foreach (ProjectInfo projectInfo in m_solution.getProjectInfos()) { if (projectInfo.ProjectType != ProjectInfo.ProjectTypeEnum.INVALID && MakeItSoConfig.Instance.ignoreProject(projectInfo.Name) == false) { ProjectPriority.AddProjectPriority(projectInfo); waitedForProcess.Add(projectInfo); } } /// Step 2. Add all dependencies of every project while (waitedForProcess.Count != 0) { var projectInfo = waitedForProcess[0]; ProcessingDependences(projectInfo, ref waitedForProcess); } /// Step 3. Get all sorted project configuration file path var sortedProjectConfigPath = ProjectPriority.GetSortedProjectConfigPath(); foreach (string configPath in sortedProjectConfigPath) { m_file.WriteLine("#include \"" + configPath + "\""); } m_file.WriteLine(""); }
/// <summary> /// Process project's dependences in waitedForProcess List /// </summary> private void ProcessingDependences(ProjectInfo projectInfo, ref List <ProjectInfo> waitedForProcess) { if (waitedForProcess.IndexOf(projectInfo) == -1) { return; } if (projectInfo.ProjectType != ProjectInfo.ProjectTypeEnum.INVALID && MakeItSoConfig.Instance.ignoreProject(projectInfo.Name) == false) { foreach (ProjectInfo depProjectInfo in projectInfo.getRequiredProjects()) { ProcessingDependences(depProjectInfo, ref waitedForProcess); ProjectPriority.AddDependency(projectInfo, depProjectInfo); } waitedForProcess.Remove(projectInfo); } }
/// <exception cref="UnknownPriorityException"></exception> /// <exception cref="ProjectDoesNotExistException">Condition.</exception> public void Handle(ReprioritizeProject command) { Project project = _eventStoreRepository.GetById(command.ProjectId); if (project == null) { throw new ProjectDoesNotExistException(); } ProjectPriority priority; if (ProjectPriority.TryParse(command.Priority.ToLower(), out priority)) { project.Reprioritize(priority); _eventStoreRepository.Save(project); } else { throw new UnknownPriorityException(command.Priority); } }
private void AddPriorities(List <Priority> priorities, Project project) { foreach (var priority in priorities) { var priorityEntity = this.data.PriorityRepository.Get(l => l.Name == priority.Name).FirstOrDefault(); if (priorityEntity == null) { priorityEntity = new Priority() { Name = priority.Name }; this.data.PriorityRepository.Insert(priorityEntity); } var projectPriority = new ProjectPriority() { Priority = priorityEntity, Project = project }; project.ProjectPriorities.Add(projectPriority); } }
// PUT: api/ProjectPriority/5 public IHttpActionResult Put([FromBody] ProjectPriority ProjectPriorityData) { ProjectPriorityRepo.SaveOrUpdate(ProjectPriorityData); return(Ok(new { Status = "success" })); }
public List <string> Handle(AllProjectPrioritiesQuery query) { ProjectPriority[] priorities = ProjectPriority.GetAll(); return(priorities.Select(x => x.DisplayName).ToList()); }
public void CreateDomainLevel1() { try { var ctx = ApplicationDbContext.Create(); //already OK if (ctx.Campaigns.Any()) { return; } var reader = new ReadOnlyContext(); var db = MemoryDB.LoadDomainLevel1(reader); var container = new MemoryDB(); foreach (var item in db.Campaigns) { var campaign = new Campaign { Id = item.Id, //AccountManager = accountManager, //AccountManagerId = accountManager?.Id, AccountManagerId = item.AccountManagerId, //Client = client, //ClientId = client?.Id, ClientId = item.ClientId, ActiveControl = item.ActiveControl, BillingPH = item.BillingPH, CampaignLimit = item.CampaignLimit, CompanyLink = item.CompanyLink, CreationDate = item.CreationDate, Description = item.Description, Identifier = item.Identifier, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, MaxAttempt = item.MaxAttempt, Objective = item.Objective, SpellCheck = item.SpellCheck, }; container.Campaigns.Add(campaign); } foreach (var item in db.Projects) { var project = new Project { Id = item.Id, //Campaign = campaign, //CampaignId = campaign.Id, CampaignId = item.CampaignId, CreationDate = item.CreationDate, Description = item.Description, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, Name = item.Name, Priority = item.Priority, }; container.Projects.Add(project); } foreach (var item in db.TimeZones) { var timeZone = new Entities.TimeZone { Id = item.Id, Code = item.Code, CreationDate = item.CreationDate, CurrentTime = item.CurrentTime, DST = item.DST, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, Name = item.Name, STD = item.STD, }; container.TimeZones.Add(timeZone); } foreach (var item in db.Penalties) { var penalty = new Penalty { Id = item.Id, CreationDate = item.CreationDate, From = item.From, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, PayRate = item.PayRate, PenaltyFee = item.PenaltyFee, To = item.To, }; container.Penalties.Add(penalty); } foreach (var item in db.AlertSettings) { var alertSettings = new AlertSettings { Id = item.Id, LastUpdate = item.LastUpdate, CreationDate = item.CreationDate, DataPercentage = item.DataPercentage, IsDeleted = item.IsDeleted, NotificationEmails = item.NotificationEmails, }; container.AlertSettings.Add(alertSettings); } foreach (var item in db.AreaCodes) { var areaCode = new AreaCode { Id = item.Id, //TimeZone = timeZone, //TimeZoneId = timeZone.Id, TimeZoneId = item.TimeZoneId, CreationDate = item.CreationDate, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, Name = item.Name, TZ = item.TZ, }; container.AreaCodes.Add(areaCode); } foreach (var item in db.CallCodes) { var campaign = container.Campaigns .SingleOrDefault(x => x.Id == item.CampaignId); var callCode = new CallCode( campaign, item.Name, item.Code, item.Behavior, item.IsSuccess, item.CreationDate); callCode.IsDeleted = item.IsDeleted; container.CallCodes.Add(callCode); } foreach (var item in db.ExportSettings) { var exportSettings = new ExportSettings { Id = item.Id, //NOT FK CampaignId = item.CampaignId, CreationDate = item.CreationDate, IsDeleted = item.IsDeleted, Key = item.Key, LastUpdate = item.LastUpdate, Name = item.Name, Value = item.Value, }; container.ExportSettings.Add(exportSettings); } foreach (var item in db.ProjectPriorities) { var projectPriority = new ProjectPriority { Id = item.Id, //Project = item.Project, //ProjectId = project.Id, ProjectId = item.ProjectId, LastUpdate = item.LastUpdate, IsDeleted = item.IsDeleted, CreationDate = item.CreationDate, Field = item.Field, PriorityValue = item.PriorityValue, }; container.ProjectPriorities.Add(projectPriority); } foreach (var item in db.ProjectPriorityDetails) { var projectPriorityDetail = new ProjectPriorityDetail { Id = item.Id, //ProjectPriority = projectPriority, //ProjectPriorityId = projectPriority.Id, ProjectPriorityId = item.ProjectPriorityId, CreationDate = item.CreationDate, FieldPriorityValue = item.FieldPriorityValue, FieldValue = item.FieldValue, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, }; container.ProjectPriorityDetails.Add(projectPriorityDetail); } foreach (var item in db.StateRestrictions) { var stateRestriction = new StateRestriction { Id = item.Id, //TimeZone = timeZone, //TimeZoneId = timeZone.Id, TimeZoneId = item.TimeZoneId, LastUpdate = item.LastUpdate, IsDeleted = item.IsDeleted, Abbreviation = item.Abbreviation, CreationDate = item.CreationDate, IsRestricted = item.IsRestricted, Name = item.Name, }; container.StateRestrictions.Add(stateRestriction); } foreach (var item in db.OnWatchSettings) { var onWatchSettings = new OnWatchSettings { Id = item.Id, //Campaign = campaign, //CampaignId = campaign.Id, CampaignId = item.CampaignId, CreationDate = item.CreationDate, HoursLeft = item.HoursLeft, IsDeleted = item.IsDeleted, LastUpdate = item.LastUpdate, }; container.OnWatchSettings.Add(onWatchSettings); } ctx.Campaigns.AddRange(container.Campaigns); ctx.Projects.AddRange(container.Projects); ctx.TimeZones.AddRange(container.TimeZones); ctx.Penalties.AddRange(container.Penalties); ctx.AlertSettings.AddRange(container.AlertSettings); ctx.AreaCodes.AddRange(container.AreaCodes); ctx.CallCodes.AddRange(container.CallCodes); ctx.ExportSettings.AddRange(container.ExportSettings); ctx.ProjectPriorities.AddRange(container.ProjectPriorities); ctx.ProjectPriorityDetails.AddRange(container.ProjectPriorityDetails); ctx.StateRestrictions.AddRange(container.StateRestrictions); ctx.SaveChanges(); } catch (Exception ex) { var str = ex.ToString(); System.Diagnostics.Debug.WriteLine(str); } }