public void Sync () { if (NetworkStatusCheck.IsReachable()) { RemoteScheduledSessionsRepository remoteScheduleRepository = new RemoteScheduledSessionsRepository(); LocalQueueRepository localQueueRepository = new LocalQueueRepository(); LocalSessionsRepository localSessionsRepository = new LocalSessionsRepository(); if (localQueueRepository.Count() > 0) { var allSessions = localSessionsRepository.Find(); var queuedItems = localQueueRepository.Find(); foreach (var queuedItem in queuedItems) { //var remoteSchedule = new Entity var sessionEntity = allSessions.Where(x => x.URI == queuedItem.URI); var schedule = new Schedule() { ConferenceName = queuedItem.ConferenceName, }; remoteScheduleRepository.Save(schedule); } } } }
public Schedule GetSchedule (string userName) { Schedule schedule; if (NetworkStatusCheck.IsReachable ()) { //TestFlight.PassCheckpoint ("Started RemoteScheduledSessionsRepository.GetSchedule"); var client = new RestClient (); client.BaseUrl = "http://conference.apphb.com/api/schedule/"; var request = new RestRequest (); request.Resource = "CodeMash/" + userName; request.RequestFormat = DataFormat.Xml; using (new NetworkIndicator()) { var response = client.Execute<Schedule> (request); schedule = new Schedule (); if (response != null && response.Data != null) { schedule = response.Data; } } //TestFlight.PassCheckpoint ("Finished RemoteScheduledSessionsRepository.GetSchedule"); return schedule; } else { return null; //TODO UIAlertView } }
public void Save (Schedule schedule) { if (NetworkStatusCheck.IsReachable ()) { //TestFlight.PassCheckpoint ("Started RemoteScheduledSessionsRepository.Save"); var client = new RestClient (); client.BaseUrl = "http://conference.apphb.com/api/schedule/"; var request = new RestRequest ("postedSession", Method.POST); request.AddObject (schedule); request.RequestFormat = DataFormat.Json; using (new NetworkIndicator()) { var response = client.Execute<Schedule> (request); } //TestFlight.PassCheckpoint ("Finished RemoteScheduledSessionsRepository.Save"); } else { } }