Ejemplo n.º 1
0
        public async Task <SystemMatch> GetKnownMatch(string systemName)
        {
            var url      = $"https://www.edsm.net/api-v1/system?showId=1&systemName={HttpUtility.HtmlEncode(systemName)}";
            var response = await _client.GetAsync(url);

            var content = await response.Content.ReadAsStringAsync();

            if (content.Trim() != "[]")
            {
                var data = ConfiguredJson.Deserialize <EDSMResponse>(content);
                return(new SystemMatch(data.Name, data.Id64));
            }

            return(null);
        }
Ejemplo n.º 2
0
        public async Task <SystemMatch> GetKnownMatch(string systemName)
        {
            var payload  = ConfiguredJson.Serialize(new SpanshRequest(systemName));
            var url      = "https://spansh.co.uk/api/systems/search";
            var response = await _client.PostAsync(url, new StringContent(payload));

            var data = ConfiguredJson.Deserialize <SpanshResponse>(await response.Content.ReadAsStringAsync());

            var system = data.Results.FirstOrDefault(x => x.Name.ToLower() == systemName.ToLower());

            if (system != null)
            {
                return(new SystemMatch(system.Name, system.Id64));
            }
            return(null);
        }
Ejemplo n.º 3
0
        public Task SaveMatch(string name, SystemMatch match)
        {
            var raw = ConfiguredJson.Serialize(match);

            return(_redis.StringSetAsync($"{_namePrefix}:{name}", raw, expiry: TimeSpan.FromDays(7)));
        }
Ejemplo n.º 4
0
        public async Task <SystemMatch> GetMatchOrNull(string name)
        {
            var raw = await _redis.StringGetAsync($"{_namePrefix}:{name}");

            return(string.IsNullOrEmpty(raw) ? null : ConfiguredJson.Deserialize <SystemMatch>(raw));
        }