Exemple #1
0
        private void SaveFavoritesDocument()
        {
            if (_cloudUrl == null)
            {
                return;
            }

            var favorites = _favoritesService.LoadFavorites();

            if (favorites == null)
            {
                return;
            }

            if (_document == null)
            {
                var docsFolder = Path.Combine(_cloudUrl.Path, "Documents");
                var docPath    = Path.Combine(docsFolder, FavoritesService.FavoritesFileName);
                var ubiq       = new NSUrl(docPath, false);

                var document = new FavoritesDocument(ubiq);
                document.Save(
                    document.FileUrl,
                    UIDocumentSaveOperation.ForCreating,
                    success =>
                {
                    if (success)
                    {
                        _document      = document;
                        _document.Data = favorites;
                        _document.UpdateChangeCount(UIDocumentChangeKind.Done);
                    }
                });
            }
            else
            {
                _document.Data = favorites;
                _document.UpdateChangeCount(UIDocumentChangeKind.Done);
            }
        }
Exemple #2
0
 private void LoadFavoritesDocument(NSMetadataQuery query)
 {
     if (query.ResultCount == 1)
     {
         var item = (NSMetadataItem)query.ResultAtIndex(0);
         var url  = (NSUrl)item.ValueForAttribute(NSMetadataQuery.ItemURLKey);
         _document = new FavoritesDocument(url);
         _document.Open(success =>
         {
             if (success && _document.Data != null)
             {
                 var favorites = _favoritesService.LoadFavorites();
                 if (favorites.LastUpdated < _document.Data.LastUpdated)
                 {
                     _favoritesService.SaveFavorites(_document.Data);
                 }
             }
         });
     }
     else if (query.ResultCount == 0)
     {
         SaveFavoritesDocument();
     }
 }