/// <summary> /// Get the flag with the specified identifier. /// </summary> /// <returns>The flag.</returns> /// <param name="id">Identifier.</param> public FlagEntity Get(string id) { List <FlagEntity> flagEntities = xmlDatabase.LoadEntities().ToList(); FlagEntity flagEntity = flagEntities.FirstOrDefault(x => x.Id == id); if (flagEntity == null) { throw new EntityNotFoundException(id, nameof(BorderEntity).Replace("Entity", "")); } return(flagEntity); }
/// <summary> /// Adds the specified flag. /// </summary> /// <param name="flagEntity">Flag.</param> public void Add(FlagEntity flagEntity) { List <FlagEntity> flagEntities = xmlDatabase.LoadEntities().ToList(); flagEntities.Add(flagEntity); try { xmlDatabase.SaveEntities(flagEntities); } catch { throw new DuplicateEntityException(flagEntity.Id, nameof(FlagEntity).Replace("Entity", "")); } }
/// <summary> /// Converts the domain model into an entity. /// </summary> /// <returns>The entity.</returns> /// <param name="flag">Flag.</param> internal static FlagEntity ToEntity(this Flag flag) { FlagEntity flagEntity = new FlagEntity { Id = flag.Id, Layer1 = flag.Layer1, Layer2 = flag.Layer2, Emblem = flag.Emblem, Skin = flag.Skin, BackgroundColourHexadecimal = ColorTranslator.ToHtml(flag.BackgroundColour), Layer1ColourHexadecimal = ColorTranslator.ToHtml(flag.Layer1Colour), Layer2ColourHexadecimal = ColorTranslator.ToHtml(flag.Layer2Colour), EmblemColourHexadecimal = ColorTranslator.ToHtml(flag.EmblemColour) }; return(flagEntity); }
/// <summary> /// Converts the entity into a domain model. /// </summary> /// <returns>The domain model.</returns> /// <param name="flagEntity">Flag entity.</param> internal static Flag ToDomainModel(this FlagEntity flagEntity) { Flag flag = new Flag { Id = flagEntity.Id, Layer1 = flagEntity.Layer1, Layer2 = flagEntity.Layer2, Emblem = flagEntity.Emblem, Skin = flagEntity.Skin, BackgroundColour = ColorTranslator.FromHtml(flagEntity.BackgroundColourHexadecimal), Layer1Colour = ColorTranslator.FromHtml(flagEntity.Layer1ColourHexadecimal), Layer2Colour = ColorTranslator.FromHtml(flagEntity.Layer2ColourHexadecimal), EmblemColour = ColorTranslator.FromHtml(flagEntity.EmblemColourHexadecimal) }; return(flag); }
/// <summary> /// Updates the specified flag. /// </summary> /// <param name="flagEntity">Flag.</param> public void Update(FlagEntity flagEntity) { List <FlagEntity> flagEntities = xmlDatabase.LoadEntities().ToList(); FlagEntity flagEntityToUpdate = flagEntities.FirstOrDefault(x => x.Id == flagEntity.Id); if (flagEntityToUpdate == null) { throw new EntityNotFoundException(flagEntity.Id, nameof(BorderEntity).Replace("Entity", "")); } flagEntityToUpdate.Layer1 = flagEntity.Layer1; flagEntityToUpdate.Layer2 = flagEntity.Layer2; flagEntityToUpdate.Emblem = flagEntity.Emblem; flagEntityToUpdate.Skin = flagEntity.Skin; flagEntityToUpdate.BackgroundColourHexadecimal = flagEntity.BackgroundColourHexadecimal; flagEntityToUpdate.Layer1ColourHexadecimal = flagEntity.Layer1ColourHexadecimal; flagEntityToUpdate.Layer2ColourHexadecimal = flagEntity.Layer2ColourHexadecimal; flagEntityToUpdate.EmblemColourHexadecimal = flagEntity.EmblemColourHexadecimal; xmlDatabase.SaveEntities(flagEntities); }
public bool AddOrRemoveFlag(FlagEntity flag, int userId = 0) { if (userId == 0) { using (var context = new ContentContext()) { context.Add(flag); return(context.SaveChanges() > 0); } // _ctx.Add(flag); } if (userId > 0) { using (var context = new ContentContext()) { context.Remove(flag); return(context.SaveChanges() > 0); } // _ctx.Remove(flag); } return(Save()); }