Ejemplo n.º 1
0
        public static async Task<ModelWrapper<List<User>>> GetUsersOnline(UserRequest userRequest)
        {
            // check internet connection
            if (!ConnectionInfo.InternetConnected())
            {
                return new ModelWrapper<List<User>>(TaskResult.NoInternet);
            }

            // get users online
            try
            {
                using (HttpClient httpClient = new HttpClient())
                {
                    string usersData = await httpClient.GetStringAsync(userRequest.GetUri());

                    List<User> tempList = JsonConvert.DeserializeObject<List<User>>(usersData);

                    if (tempList != null)
                    {

                        // successfully retrieve posts, so save them
                        DataManager.SaveUsers(usersData);

                        return new ModelWrapper<List<User>>(tempList, TaskResult.Success);
                    }
                    else
                    {
                        return new ModelWrapper<List<User>>(TaskResult.NoData);
                    }
                }
            }
            catch (Exception)
            {
                return new ModelWrapper<List<User>>(TaskResult.Error);
            }
        }