public DataProvider(IDatabaseConnection db) { _db = db; //Compendium = new Importer().ImportCompendium(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), "Data", "SRD.xml")); Compendium = new Importer().ImportCompendium(@"D:\Dateien\OneDrive\Xerios\AllData.xml"); var monsterParser = new MonsterParser(new SpellcastingParser(), new ActionParser(), new DynamicEnumProvider(db)); var spellParser = new SpellParser(); var allMonsters = GetAllMonsters(); var allSpells = GetAllSpells(); foreach (var compendiumSpell in Compendium.Spells) { if (allSpells.Any(m => m.Name.Equals(compendiumSpell.Name))) { continue; } var spell = spellParser.Parse(compendiumSpell); db.Add(spell); } allSpells = GetAllSpells(); foreach (var compendiumMonster in Compendium.Monsters) { if (allMonsters.Any(m => m.Name.Equals(compendiumMonster.Name))) { continue; } var monster = monsterParser.Parse(compendiumMonster, allSpells); db.Add(monster); } }
private Cart CreateShoppingCart() { var cart = new Cart() { Status = CartStatus.Created }; return(_databaseConnection.Add(cart)); }
private void ImportXML(IDatabaseConnection db) { var srd = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), "Data", "SRD.xml"); if (File.Exists(@"D:\Dateien\OneDrive\Xerios\AllData.xml")) { Compendium = new Importer().ImportCompendium(@"D:\Dateien\OneDrive\Xerios\AllData.xml"); } else if (File.Exists(srd)) { Compendium = new Importer().ImportCompendium(srd); } else { return; } var monsterParser = new MonsterParser(new SpellcastingParser(), new ActionParser()); var spellParser = new SpellParser(); var allMonsters = GetAllMonsters(); var allSpells = GetAllSpells(); foreach (var compendiumSpell in Compendium.Spells) { if (allSpells.Any(m => m.Name.Equals(compendiumSpell.Name))) { continue; } var spell = spellParser.Parse(compendiumSpell); db.Add(spell); } allSpells = GetAllSpells(); foreach (var compendiumMonster in Compendium.Monsters) { if (allMonsters.Any(m => m.Name.Equals(compendiumMonster.Name))) { continue; } var monster = monsterParser.Parse(compendiumMonster, allSpells); db.Add(monster); } }
public void EnsureDefaultValues() { foreach (var defaultEnum in DynamicEnumList.GetDefaults()) { if (GetEnumValues(defaultEnum.Name) == null) { _db.Add(defaultEnum); } } }
private void LoadAllProjects(IDatabaseConnection db) { var allProjects = GetAllProjects(); var allMonsters = GetAllMonsters(); var allSpells = GetAllSpells(); var jDb = new JsonDatabaseConnection(); foreach (var project in jDb.GetAllProjectNames()) { var pDb = JsonDatabaseConnection.GetProjectDb(project); foreach (var p in pDb.GetQueryable <Project>().Where(p => !allProjects.Any(mp => p.Id == mp.Id)).ToList()) { db.Add(p); } foreach (var m in pDb.GetQueryable <Monster>().Where(m => !allMonsters.Any(mm => m.Id == mm.Id)).ToList()) { db.Add(m); } foreach (var s in pDb.GetQueryable <Spell>().Where(s => !allSpells.Any(ms => s.Id == ms.Id)).ToList()) { db.Add(s); } } }
internal Project CreateProject(Project project) { _db.Add(project); JsonDatabaseConnection.GetProjectDb(project.Name).Add(project); return(project); }