public async Task FirstLoadCicloStationsAsync() { var token = await _tokenManager.GetTokenAsync(); string cicloStationsUrl = String.Format("{0}{1}", _url, token.access_token); string jsonResult = await _httpCommunicator.GetRequestAsync(cicloStationsUrl); var cicloStationResult = JsonConvert.DeserializeObject<CicloStationResult>(jsonResult); if (cicloStationResult != null) { JsonController<IEnumerable<CicloStation>> jsonController = new JsonController<IEnumerable<CicloStation>>(fileName); CicloStations = cicloStationResult.stations; await jsonController.SaveElementAsync(cicloStationResult.stations); } }
public async Task<EcoBiciToken> GetTokenAsync() { EcoBiciToken result = default(EcoBiciToken); JsonController<EcobiciTokenControllerEntity> xmlController = new JsonController<EcobiciTokenControllerEntity>(fileName); var ecobiciTokenControllerResult = await xmlController.ReadElementAsync(); //TODO: el token solo esta disponible 1 hora if (ecobiciTokenControllerResult != null && (DateTime.Now - ecobiciTokenControllerResult.SaveDate).Hours < 1) return ecobiciTokenControllerResult.EcoBiciToken; result = await _authenticator.GetAccessTokenAsync(); EcobiciTokenControllerEntity ecobiciTokenControllerEntity = new EcobiciTokenControllerEntity() { EcoBiciToken = result, SaveDate = DateTime.Now }; await xmlController.SaveElementAsync(ecobiciTokenControllerEntity); return result; }