Exemple #1
0
        public void GetAsyncTest()
        {
            InitializeClient();
            var completion = new ManualResetEvent(false);

            client.GetAllBookmarks().Subscribe(result =>
            {
                var a = result.ToList();
                Console.WriteLine(result);
                completion.Set();
            });

            completion.WaitOne();
        }
Exemple #2
0
 public IObservable <IEnumerable <Post> > GetAllBookmarks()
 {
     isAllLoaded = false;
     return(client.Update().SelectMany(lastModified =>
     {
         //last sync以降に更新があったとき
         var lastSync = SettingsService.LoadSettingOrDefault <DateTime?>(Consts.LastSynkKey);
         if (!lastSync.HasValue || lastSync.Value.CompareTo(lastModified) < 0)
         {
             SettingsService.SaveSetting(Consts.LastSynkKey, DateTime.Now);
             return client.GetAllBookmarks()
             .Select(posts =>
             {
                 isAllLoaded = true;
                 var ordered = posts.OrderByDescending(x => x.Time);
                 RefreshPostItems(ordered);
                 return SaveAndReturnItem(ordered);
             });
         }
         else
         {
             isAllLoaded = true;
             return Observable.Empty <IEnumerable <Post> >();
         }
     }));
 }