public async override Task <SynchroManager.Status> Synchronize(SynchroHandle _syncHandle) { SynchroManager.Status _syncStatus = SynchroManager.Status.ErrorOrNotConnected; if (LoggedIn != WebAccountState.Connected) { await SyncMngr.Login(SynchroManager.ServerName.GooglePlus); } if (!Connection.InternetAccess()) { return(_syncStatus); } ProgressUpdate(Res.GetString("SynchroStart"), 0); HttpResponseMessage _response = await(new HttpClient()).GetAsync(new Uri(MAIN + "?access_token=" + Token)); if ((_response != null) && (_response.StatusCode == HttpStatusCode.OK)) { ResponseFeed _feed = await Serialization.DeserializeHttpToXml <ResponseFeed>(_response.Content, "feed", "http://www.w3.org/2005/Atom") as ResponseFeed; } Trip _trip = await Trip.LoadFromSummary(_syncHandle.TripSummary); return(SynchroManager.Status.Synchronized); }
public void SetSynchroStatus(SynchroHandle _syncObj, SynchroManager.Status _status) { // not synchronized => rect not visible // synchronized but not connected => rect visible red // synchronized connected but not finished => rect visible orange // synchronized connected but finished => rect visible green Visibility _visibility = Visibility.Collapsed; SolidColorBrush _color = null; switch (_status) { case SynchroManager.Status.NoRequest: loadRing.IsActive = false; _color = new SolidColorBrush(Colors.White); _timer.Stop(); break; case SynchroManager.Status.ErrorOrNotConnected: loadRing.IsActive = false; _visibility = Visibility.Visible; _color = new SolidColorBrush(Colors.Red); _timer.Stop(); break; case SynchroManager.Status.InProgress: loadRing.IsActive = true; _visibility = Visibility.Visible; _color = new SolidColorBrush(Colors.Orange); _handleProgress = _syncObj; _timer.Start(); break; case SynchroManager.Status.Synchronized: loadRing.IsActive = false; _visibility = Visibility.Visible; _color = new SolidColorBrush(Colors.Green); _timer.Stop(); break; } _syncObj.UpdateRectangle(_visibility, _color); }
public async override Task <SynchroManager.Status> Synchronize(SynchroHandle _syncHandle) { SynchroManager.Status _syncStatus = SynchroManager.Status.ErrorOrNotConnected; if (!Connection.InternetAccess()) { return(_syncStatus); } if (LoggedIn != WebAccountState.Connected) { await SyncMngr.Login(SynchroManager.ServerName.Facebook); } ProgressUpdate(Res.GetString("SynchroStart"), 0); Trip _trip = await Trip.LoadFromSummary(_syncHandle.TripSummary); return(SynchroManager.Status.Synchronized); }
public async override Task <SynchroManager.Status> Synchronize(SynchroHandle _syncHandle) { Boolean _status = true; SynchroManager.Status _syncStatus = SynchroManager.Status.NoRequest; if (LoggedIn != WebAccountState.Connected) { _syncHandleSav = _syncHandle; _status = await SyncMngr.Login(SynchroManager.ServerName.Usb); } if (_status) { Trip _trip = await Trip.LoadFromSummary(_syncHandle.TripSummary); _status &= await SynchronizeTrip(_trip); ProgressFinished(""); // check error status if (CancelInProgress()) { _syncStatus = SynchroManager.Status.NoRequest; } else if (!_status) { _syncStatus = SynchroManager.Status.ErrorOrNotConnected; } else { _syncStatus = SynchroManager.Status.Synchronized; } } else { _syncStatus = SynchroManager.Status.ErrorOrNotConnected; } _syncHandle.SetSynchroStatus(_syncStatus); return(_syncStatus); }
public void SetSynchroStatus(SynchroManager.Status _status) { tripDescUc.SetSynchroStatus(this, _status); }
public async override Task <SynchroManager.Status> Synchronize(SynchroHandle _syncHandle) { _handle = _syncHandle; SynchroManager.Status _syncStatus = SynchroManager.Status.ErrorOrNotConnected; if (!Connection.InternetAccess()) { return(_syncStatus); } ProgressUpdate(Res.GetString("SynchroStart"), 0); //list top-folder, login if not logged (reentrant) ResponseContainer _folderDesc = await MetadataTopFolder(SyncMngr, true); if ((_folderDesc != null) && (_folderDesc.contents != null)) { Boolean _status = true; List <String> _listTripNames = new List <string>(); foreach (ResponseElement _element in _folderDesc.contents) { if (_element.is_dir) { _listTripNames.Add(_element.path); } } // check if trip folder name match, rename if necessary foreach (String _tripName in _listTripNames) { // no error check since the folder may not exist if ((_syncHandle.TripSummary.SyncDropbox.PreviousName != null) && (_syncHandle.TripSummary.SyncDropbox.PreviousName != "")) { if (_syncHandle.TripSummary.SyncDropbox.PreviousName == _tripName) { await RenameFolder(_tripName, _syncHandle.TripSummary.FolderTopName); } } // check cancellation if (CancelInProgress()) { return(SynchroManager.Status.NoRequest); } } Trip _trip = await Trip.LoadFromSummary(_syncHandle.TripSummary); UploadList = new List <UploadOperation>(); _status &= await SynchronizeTrip(_trip); // check error status if (CancelInProgress()) { return(SynchroManager.Status.NoRequest); } else if (!_status) { return(SynchroManager.Status.ErrorOrNotConnected); } _status &= await UploadAll(UploadList); // check error status if (CancelInProgress()) { _syncStatus = SynchroManager.Status.NoRequest; } else if (!_status) { _syncStatus = SynchroManager.Status.ErrorOrNotConnected; } else { _syncStatus = SynchroManager.Status.Synchronized; } return(_syncStatus); } else { ProgressFinished(""); return(SynchroManager.Status.ErrorOrNotConnected); } }