using System; using System.IO; using System.IO.IsolatedStorage; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; namespace Ease.Core.Utility { //public sealed class ClientStorage //{ // private static readonly object SyncRoot = new object(); // private static IsolatedStorageFile _store = IsolatedStorageFile.GetUserStoreForAssembly(); // public static object GetData(string path) // { // Stream stream = null; // try // { // stream = new IsolatedStorageFileStream(path, FileMode.Open, _store); // if (stream == null) // return null; // IFormatter formatter = new BinaryFormatter(); // return formatter.Deserialize(stream); // } // catch(Exception) // { // return null; // } // finally // { // if (stream != null) // stream.Close(); // } // } // public static void SetData(string path, object value) // { // lock (SyncRoot) // { // if (value == null) // { // try // { // if (_store.GetFileNames(path).Length > 0) // { // _store.DeleteFile(path); // return; // } // } // catch (DirectoryNotFoundException) // { // return; // } // } // Stream stream = null; // try // { // string[] dirs = path.Split('/'); // if (dirs.Length > 1) // { // string dir = string.Join("/", dirs, 0, dirs.Length - 1); // _store.CreateDirectory(dir); // } // stream = new IsolatedStorageFileStream(path, FileMode.OpenOrCreate, _store); // if (stream != null) // { // IFormatter formatter = new BinaryFormatter(); // formatter.Serialize(stream, value); // } // } // catch (Exception) {} // finally // { // if (stream != null) // stream.Close(); // } // } // } // public static bool Contains(string path) // { // try // { // return _store.GetFileNames(path).Length > 0; // } // catch (DirectoryNotFoundException) // { // return false; // } // } // public static void Remove(string path) // { // lock (SyncRoot) // { // if (path.EndsWith("/")) // { // foreach (string subDir in _store.GetDirectoryNames(path)) // { // Remove(subDir); // } // } // try // { // foreach (string file in _store.GetFileNames(path)) // { // _store.DeleteFile(Path.Combine(Path.GetDirectoryName(path), file)); // } // } // catch (DirectoryNotFoundException) { } // } // } // public static void ClearStorage() // { // _store.Remove(); // _store = IsolatedStorageFile.GetUserStoreForDomain(); // } //} }