public static IEnumerable <TwitterStatus> GetFromCache(TwitterResource resource) { string fileName = GetCacheName(resource); var serializer = new SharpSerializer(SerializerSettings); IEnumerable <TwitterStatus> statuses = null; MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { try { using (var stream = FileAbstractor.GetFileStream(fileName)) { if (stream.Length != 0) { statuses = serializer.Deserialize(stream) as IEnumerable <TwitterStatus>; } } } catch (Exception ex) { Debug.WriteLine(ex); } }); return(statuses ?? new List <TwitterStatus>()); }
public static void ClearAll() { MutexUtil.DoWork(mutexName, () => { IsolatedStorageSettings.ApplicationSettings.Clear(); }); }
private static T GenericGetFromConfig <T>(string key, ref T element) { if (element != null) { return(element); } T copy = default(T); MutexUtil.DoWork(mutexName, () => { IsolatedStorageSettings config = IsolatedStorageSettings.ApplicationSettings; try { if (!config.TryGetValue <T>(key, out copy)) { if (DefaultValues.ContainsKey(key)) { copy = (T)DefaultValues[key]; } else { copy = CreateDefault <T>(); } config.Add(key, copy); config.Save(); } } catch (InvalidCastException) { copy = CreateDefault <T>(); config.Remove(key); config.Save(); } }); element = copy; if (element == null) { element = CreateDefault <T>(); } return(element); }
public static void WriteContentsToFile(string contents, string fileName) { IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication(); IsolatedStorageFileStream file; MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { using (file = storage.OpenFile(fileName, System.IO.FileMode.Create)) { using (var writer = new StreamWriter(file)) { writer.Write(contents); writer.Close(); } file.Close(); } }); }
public static string ReadContentsOfFile(string fileName) { var storage = IsolatedStorageFile.GetUserStoreForApplication(); string contents = ""; MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { using (var file = storage.OpenFile(fileName, System.IO.FileMode.OpenOrCreate)) { using (var reader = new StreamReader(file)) { contents = reader.ReadToEnd(); reader.Close(); } file.Close(); } }); return(contents); }
public static void WriteLinesToFile(IEnumerable <string> lines, string fileName) { IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication(); IsolatedStorageFileStream file; MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { using (file = storage.OpenFile(fileName, System.IO.FileMode.Create)) { using (var writer = new StreamWriter(file)) { foreach (var line in lines) { writer.WriteLine(line); } writer.Close(); } file.Close(); } }); }
public static void SaveToCache(TwitterResource resource, IEnumerable <TwitterStatus> list) { string fileName = GetCacheName(resource); var serializer = new SharpSerializer(SerializerSettings); MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { try { using (var stream = FileAbstractor.GetFileStream(fileName)) { serializer.Serialize(list.Distinct().OfType <TwitterStatus>().ToList(), stream); } } catch (Exception ex) { Debug.WriteLine(ex); } }); }
private static void GenericSaveToConfig <T>(string Key, ref T element, T value) { if (value == null) { return; } element = value; MutexUtil.DoWork(mutexName, () => { IsolatedStorageSettings conf = IsolatedStorageSettings.ApplicationSettings; if (conf.Contains(Key)) { conf[Key] = value; } else { conf.Add(Key, value); } conf.Save(); }); }
public static IEnumerable <string> ReadLinesOfFile(string fileName) { List <string> lines = new List <string>(); var storage = IsolatedStorageFile.GetUserStoreForApplication(); MutexUtil.DoWork("OCELL_FILE_MUTEX" + fileName, () => { using (var file = storage.OpenFile(fileName, System.IO.FileMode.OpenOrCreate)) { using (var reader = new StreamReader(file)) { while (!reader.EndOfStream) { lines.Add(reader.ReadLine()); } reader.Close(); } file.Close(); } }); return(lines); }