using System; using System.Reactive; using Akavache; using ReactiveUI; namespace Intromat { public class AkavacheSuspensionDriver : ISuspensionDriver where TAppState : class { private const string AppStateKey = "appState"; public AkavacheSuspensionDriver() { BlobCache.ApplicationName = "Your Application Name"; } public IObservable InvalidateState() { return BlobCache.UserAccount.InvalidateObject(AppStateKey); } public IObservable LoadState() { return BlobCache.UserAccount.GetObject(AppStateKey)!; } public IObservable SaveState(object state) { return BlobCache.UserAccount.InsertObject(AppStateKey, (TAppState)state); } } }