Esempio n. 1
0
        // private Lua luaState;


        // TODO
        // add char and league service to singleton
        public PoeFetcherManager(ILogger <PoeFetcherManager> logger)
        {
            _logger               = logger;
            this.PoeContext       = new PoeDbContext();
            this.characterService = new CharacterService(this.PoeContext);
            this.leagueService    = new LeagueService(this.PoeContext);
        }
Esempio n. 2
0
        public LeaguesController(PoeDbContext context, LeagueService _leagueService, IDistributedCache distributedCache, ILogger <LeaguesController> logger)
        {
            PoeContext            = context;
            this.distributedCache = distributedCache;
            this._logger          = logger;
            this.leagueService    = _leagueService;

            // TODO
            // move to Startup file or dbcontext?
            SqlMapper.AddTypeHandler <PoeAccount>(new JsonConvertHandler <PoeAccount>());

            SqlMapper.AddTypeHandler <List <CharEntry> >(new JsonConvertHandler <List <CharEntry> >());
            SqlMapper.AddTypeHandler <List <UniqueEntry> >(new JsonConvertHandler <List <UniqueEntry> >());
            SqlMapper.AddTypeHandler <List <SkillEntry> >(new JsonConvertHandler <List <SkillEntry> >());
            SqlMapper.AddTypeHandler <List <KeystoneEntry> >(new JsonConvertHandler <List <KeystoneEntry> >());
            SqlMapper.AddTypeHandler <List <WeaponTypeEntry> >(new JsonConvertHandler <List <WeaponTypeEntry> >());
            SqlMapper.AddTypeHandler <List <ClassEntry> >(new JsonConvertHandler <List <ClassEntry> >());

            SqlMapper.AddTypeHandler <CharEntry[]>(new JsonConvertHandler <CharEntry[]>());
            SqlMapper.AddTypeHandler <UniqueEntry[]>(new JsonConvertHandler <UniqueEntry[]>());
            SqlMapper.AddTypeHandler <SkillEntry[]>(new JsonConvertHandler <SkillEntry[]>());
            SqlMapper.AddTypeHandler <KeystoneEntry[]>(new JsonConvertHandler <KeystoneEntry[]>());
            SqlMapper.AddTypeHandler <WeaponTypeEntry[]>(new JsonConvertHandler <WeaponTypeEntry[]>());
            SqlMapper.AddTypeHandler <ClassEntry[]>(new JsonConvertHandler <ClassEntry[]>());
            SqlMapper.AddTypeHandler <MainSkillSupportCountEntry[]>(new JsonConvertHandler <MainSkillSupportCountEntry[]>());
        }
Esempio n. 3
0
        private async Task FetchAndUpsertLeagues()
        {
            List <PoeLeagueModel> leagues = await PoeFetcher.GetLeagues();

            using (var PoeContext = new PoeDbContext())
            {
                await PoeContext.Leagues.UpsertRange(leagues.ToArray()).On(x => new { LeagueId = x.LeagueId }).RunAsync();
            }
        }
Esempio n. 4
0
        public LeagueService(PoeDbContext _PoeContext)
        {
            PoeContext = _PoeContext;

            SqlMapper.AddTypeHandler <List <CharEntry> >(new JsonConvertHandler <List <CharEntry> >());
            SqlMapper.AddTypeHandler <List <UniqueEntry> >(new JsonConvertHandler <List <UniqueEntry> >());
            SqlMapper.AddTypeHandler <List <SkillEntry> >(new JsonConvertHandler <List <SkillEntry> >());
            SqlMapper.AddTypeHandler <List <KeystoneEntry> >(new JsonConvertHandler <List <KeystoneEntry> >());
            SqlMapper.AddTypeHandler <List <WeaponTypeEntry> >(new JsonConvertHandler <List <WeaponTypeEntry> >());
            SqlMapper.AddTypeHandler <List <ClassEntry> >(new JsonConvertHandler <List <ClassEntry> >());

            SqlMapper.AddTypeHandler <CharEntry[]>(new JsonConvertHandler <CharEntry[]>());
            SqlMapper.AddTypeHandler <UniqueEntry[]>(new JsonConvertHandler <UniqueEntry[]>());
            SqlMapper.AddTypeHandler <SkillEntry[]>(new JsonConvertHandler <SkillEntry[]>());
            SqlMapper.AddTypeHandler <KeystoneEntry[]>(new JsonConvertHandler <KeystoneEntry[]>());
            SqlMapper.AddTypeHandler <WeaponTypeEntry[]>(new JsonConvertHandler <WeaponTypeEntry[]>());
            SqlMapper.AddTypeHandler <ClassEntry[]>(new JsonConvertHandler <ClassEntry[]>());
            SqlMapper.AddTypeHandler <MainSkillSupportCountEntry[]>(new JsonConvertHandler <MainSkillSupportCountEntry[]>());
        }
Esempio n. 5
0
        public CharacterService(PoeDbContext PoeContext)
        {
            this.PoeContext = PoeContext;
            SqlMapper.AddTypeHandler <PoeAccount>(new JsonConvertHandler <PoeAccount>());

            SqlMapper.AddTypeHandler <List <CharEntry> >(new JsonConvertHandler <List <CharEntry> >());
            SqlMapper.AddTypeHandler <List <UniqueEntry> >(new JsonConvertHandler <List <UniqueEntry> >());
            SqlMapper.AddTypeHandler <List <SkillEntry> >(new JsonConvertHandler <List <SkillEntry> >());
            SqlMapper.AddTypeHandler <List <KeystoneEntry> >(new JsonConvertHandler <List <KeystoneEntry> >());
            SqlMapper.AddTypeHandler <List <WeaponTypeEntry> >(new JsonConvertHandler <List <WeaponTypeEntry> >());
            SqlMapper.AddTypeHandler <List <ClassEntry> >(new JsonConvertHandler <List <ClassEntry> >());

            SqlMapper.AddTypeHandler <CharEntry[]>(new JsonConvertHandler <CharEntry[]>());
            SqlMapper.AddTypeHandler <UniqueEntry[]>(new JsonConvertHandler <UniqueEntry[]>());
            SqlMapper.AddTypeHandler <SkillEntry[]>(new JsonConvertHandler <SkillEntry[]>());
            SqlMapper.AddTypeHandler <KeystoneEntry[]>(new JsonConvertHandler <KeystoneEntry[]>());
            SqlMapper.AddTypeHandler <WeaponTypeEntry[]>(new JsonConvertHandler <WeaponTypeEntry[]>());
            SqlMapper.AddTypeHandler <ClassEntry[]>(new JsonConvertHandler <ClassEntry[]>());
            SqlMapper.AddTypeHandler <MainSkillSupportCountEntry[]>(new JsonConvertHandler <MainSkillSupportCountEntry[]>());
        }
Esempio n. 6
0
        private void ForceUpdateCharactersPob(CancellationToken stoppingToken)
        {
            List <PoeCharacterModel> _chars =
                PoeContext.Characters
                .Select(c => new PoeCharacterModel {
                CharacterId = c.CharacterId, PobCode = c.PobCode
            })
                .ToList();

            foreach (var _c in _chars)
            {
                if (stoppingToken.IsCancellationRequested)
                {
                    return;
                }
                try
                {
                    string         newPobXml   = PobUtils.GetBuildXmlByXml(PobUtils.CodeToXml(_c.PobCode));
                    string         nextPobCode = PobUtils.XmlToCode(newPobXml);
                    PathOfBuilding nextPob     = PobUtils.XmlToPob(newPobXml);
                    _c.PobCode = nextPobCode;
                    _c.Pob     = nextPob;
                    _c.Pob     = PobUtils.XmlToPob(PobUtils.CodeToXml(_c.PobCode));
                    using (var db = new PoeDbContext())
                    {
                        db.Characters.Attach(_c);
                        db.Entry(_c).Property(x => x.PobCode).IsModified = true;
                        db.Entry(_c).Property(x => x.Pob).IsModified     = true;
                        db.SaveChanges();
                    }
                }
                catch (System.Exception e)
                {
                    _logger.LogError(e.ToString());
                }
            }
        }
Esempio n. 7
0
 public CharactersController(PoeDbContext context)
 {
     PoeContext = context;
 }