public static void LoadFavouritesFromIndividualFiles(ObservableCollection <ConversationListObject> favList, Dictionary <string, ConversationListObject> _convmap) { lock (favReadWriteLock) { using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { if (!store.DirectoryExists("FAVS")) { store.CreateDirectory("FAVS"); return; } string[] files = store.GetFileNames("FAVS\\*"); foreach (string fname in files) { using (var file = store.OpenFile("FAVS\\" + fname, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (var reader = new BinaryReader(file)) { ConversationListObject item = new ConversationListObject(); try { item.ReadFavOrPending(reader); if (_convmap.ContainsKey(item.Msisdn)) // if this item is in convList, just mark IsFav to true { favList.Add(_convmap[item.Msisdn]); _convmap[item.Msisdn].IsFav = true; } else { favList.Add(item); } } catch (Exception ex) { Debug.WriteLine(ex); } reader.Close(); } try { file.Close(); file.Dispose(); } catch { } } } } } }
public static void LoadPendingRequests() { lock (pendingReadWriteLock) { using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { if (!store.DirectoryExists(MISC_DIR)) { store.CreateDirectory(MISC_DIR); return; } string fname = MISC_DIR + "\\" + PENDING_REQ_FILE; if (!store.FileExists(fname)) { return; } using (var file = store.OpenFile(fname, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (var reader = new BinaryReader(file)) { int count = 0; try { count = reader.ReadInt32(); } catch { } if (count > 0) { for (int i = 0; i < count; i++) { ConversationListObject item = new ConversationListObject(); try { item.ReadFavOrPending(reader); if (App.ViewModel.ConvMap.ContainsKey(item.Msisdn)) { App.ViewModel.PendingRequests.Add(App.ViewModel.ConvMap[item.Msisdn]); } else { item.Avatar = MiscDBUtil.getThumbNailForMsisdn(item.Msisdn); App.ViewModel.PendingRequests.Add(item); } } catch { item = null; } } } reader.Close(); } try { file.Close(); file.Dispose(); } catch { } } } } }
public static void LoadFavourites(ObservableCollection <ConversationListObject> favList, Dictionary <string, ConversationListObject> _convmap) { lock (favReadWriteLock) { using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication()) { if (!store.DirectoryExists(MISC_DIR)) { store.CreateDirectory(MISC_DIR); return; } string fname = MISC_DIR + "\\" + FAVOURITES_FILE; if (!store.FileExists(fname)) { return; } using (var file = store.OpenFile(fname, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (var reader = new BinaryReader(file)) { int count = 0; try { count = reader.ReadInt32(); } catch { } if (count > 0) { for (int i = 0; i < count; i++) { ConversationListObject item = new ConversationListObject(); try { item.ReadFavOrPending(reader); if (_convmap.ContainsKey(item.Msisdn)) // if this item is in convList, just mark IsFav to true { favList.Add(_convmap[item.Msisdn]); _convmap[item.Msisdn].IsFav = true; } else { favList.Add(item); } } catch (Exception ex) { Debug.WriteLine(ex); } } } reader.Close(); } try { file.Close(); file.Dispose(); } catch { } } } } }