public void Register(IMutableDependencyResolver resolver) { #if SILVERLIGHT || XAMARIN_MOBILE var fs = new IsolatedStorageProvider(); #elif WINRT var fs = new WinRTFilesystemProvider(); #else var fs = new SimpleFilesystemProvider(); #endif resolver.Register(() => fs, typeof(IFilesystemProvider), null); #if WP8 var enc = new WP8EncryptionProvider(); #elif WINRT var enc = new WinRTEncryptionProvider(); #else var enc = new EncryptionProvider(); #endif resolver.Register(() => enc, typeof(IEncryptionProvider), null); var localCache = new Lazy<IBlobCache>(() => new InMemoryBlobCache()); var userAccount = new Lazy<IBlobCache>(() => new InMemoryBlobCache()); var secure = new Lazy<ISecureBlobCache>(() => new InMemoryBlobCache()); resolver.Register(() => localCache.Value, typeof(IBlobCache), "LocalMachine"); resolver.Register(() => userAccount.Value, typeof(IBlobCache), "UserAccount"); resolver.Register(() => secure.Value, typeof(ISecureBlobCache), null); resolver.Register(() => new AkavacheHttpMixin(), typeof(IAkavacheHttpMixin), null); #if APPKIT || UIKIT BlobCache.ApplicationName = NSBundle.MainBundle.BundleIdentifier; resolver.Register(() => new MacFilesystemProvider(), typeof(IFilesystemProvider), null); #endif #if ANDROID var ai = Application.Context.PackageManager.GetApplicationInfo(Application.Context.PackageName, 0); BlobCache.ApplicationName = ai.LoadLabel(Application.Context.PackageManager); resolver.Register(() => new AndroidFilesystemProvider(), typeof(IFilesystemProvider), null); #endif }
public void Register(IMutableDependencyResolver resolver) { #if SILVERLIGHT || XAMARIN_MOBILE var fs = new IsolatedStorageProvider(); #elif WINRT var fs = new WinRTFilesystemProvider(); #else var fs = new SimpleFilesystemProvider(); #endif resolver.Register(() => fs, typeof(IFilesystemProvider), null); #if WP8 var enc = new WP8EncryptionProvider(); #elif WINRT var enc = new WinRTEncryptionProvider(); #else var enc = new EncryptionProvider(); #endif resolver.Register(() => enc, typeof(IEncryptionProvider), null); var localCache = new Lazy <IBlobCache>(() => new InMemoryBlobCache()); var userAccount = new Lazy <IBlobCache>(() => new InMemoryBlobCache()); var secure = new Lazy <ISecureBlobCache>(() => new InMemoryBlobCache()); resolver.Register(() => localCache.Value, typeof(IBlobCache), "LocalMachine"); resolver.Register(() => userAccount.Value, typeof(IBlobCache), "UserAccount"); resolver.Register(() => secure.Value, typeof(ISecureBlobCache), null); resolver.Register(() => new AkavacheHttpMixin(), typeof(IAkavacheHttpMixin), null); #if APPKIT || UIKIT BlobCache.ApplicationName = NSBundle.MainBundle.BundleIdentifier; resolver.Register(() => new MacFilesystemProvider(), typeof(IFilesystemProvider), null); #endif #if ANDROID var ai = Application.Context.PackageManager.GetApplicationInfo(Application.Context.PackageName, 0); BlobCache.ApplicationName = ai.LoadLabel(Application.Context.PackageManager); resolver.Register(() => new AndroidFilesystemProvider(), typeof(IFilesystemProvider), null); #endif }