public DatabaseApplication(IDatabaseRepository databaseRepository, IDatabaseDomainService databaseDomainService, IDatabaseCache databaseCache, IOperateLogDomainService operateLogDomainService) { _databaseRepository = databaseRepository; _databaseDomainService = databaseDomainService; _databaseCache = databaseCache; _operateLogDomainService = operateLogDomainService; }
public DatabasePageViewModel( INavigator navigator, IDatabaseCache unlocker, IClipboard <string> clipboard, ICredentialProvider credentialProvider, INameProvider nameProvider, ILauncher launcher, IMessageDialogFactory dialogs, ILogger log) { _clipboard = clipboard; _unlocker = unlocker; _navigator = navigator; _credentialProvider = credentialProvider; _nameProvider = nameProvider; _launcher = launcher; _dialogs = dialogs; _log = log; ItemClickCommand = new DelegateCommand <IKeePassId>(item => GroupClicked(item as IKeePassGroup), item => (item as IKeePassGroup) != null); GoToParentCommand = new DelegateCommand <IKeePassGroup>(group => { if (_database != null) { _navigator.GoToDatabaseView(_database, group); } }); CopyCommand = new DelegateCommand <string>(text => _clipboard.Copy(text)); OpenUrlCommand = new DelegateCommand <IKeePassEntry>(async entry => { if (Uri.TryCreate(entry.Url, UriKind.Absolute, out Uri uri)) { await _launcher.LaunchUriAsync(uri); } }); AddEntryCommand = new DelegateCommand(async() => { var name = await _nameProvider.GetNameAsync(); if (!string.IsNullOrEmpty(name)) { Items.Add(_group.CreateEntry(name)); } NotifyAllCommands(); #if FEATURE_SAVE // This is disabled currently due to twsouthwick/KeePassWin 15 }, () => !_saving); #else }, () => !_activeSearch);
public LongRunningCache(ICache updatingCache, IDatabaseCache longTermCache, TimeSpan expiresAfter, TimeSpan?refreshAfter = null) { this.updatingCache = updatingCache; this.longTermCache = longTermCache; if (expiresAfter < refreshAfter) { throw new ArgumentException("Refreshes must occur before expiration!"); } this.expiresAfter = expiresAfter; this.refreshAfter = refreshAfter; }
public PasswordDialogViewModel(IFile db, IDatabaseCache cache, IDatabaseFileAccess tracker) { Name = db.Name; AddKeyFileCommand = new DelegateCommand(async() => { KeyFile = await cache.AddKeyFileAsync(db); }); tracker.GetKeyFileAsync(db).ContinueWith((r, o) => { KeyFile = r.Result; }, SynchContext); }
public GuildStatsRetriever( ICache memoryCache, IDatabaseCache databaseCache, IBackgroundTaskQueue taskQueue, IMailSender mailSender, ICommonValuesProvider commonValues, IMailGenerator mailGenerator) { this.longRunningCache = new LongRunningCache <IEnumerable <GuildMemberStats> >(memoryCache, databaseCache, TimeSpan.FromDays(3), TimeSpan.FromDays(1)); this.taskQueue = taskQueue; this.mailSender = mailSender; this.commonValues = commonValues; this.mailGenerator = mailGenerator; }
public MenuViewModel(INavigator navigator, IDatabaseCache cache, ICredentialProvider credentialProvider, IMessageDialogFactory messageDialogs, IFilePicker filePicker) { _navigator = navigator; _cache = cache; _credentialProvider = credentialProvider; _messageDialogs = messageDialogs; Databases = new ObservableCollection <MenuItemViewModel>(); SettingsCommand = new DelegateCommand(() => _navigator.GoToSettings()); OpenCommand = new DelegateCommand(async() => await _cache.AddDatabaseAsync(filePicker, false)); _subscription = cache.Databases .ObserveOn(SynchContext) .Subscribe(action => { switch (action.action) { case DatabaseAction.Add: AddDatabaseEntry(action.file); break; case DatabaseAction.Open: var entry = AddDatabaseEntry(action.file); entry.Command.Execute(null); break; case DatabaseAction.Remove: RemoveDatabaseEntry(action.file); break; } }); _cache.GetDatabaseFilesAsync().ContinueWith(r => { if (r.IsFaulted) { return; } foreach (var item in r.Result) { AddDatabaseEntry(item); } }); }
public MenuViewModel(INavigator navigator, IDatabaseCache cache, ICredentialProvider credentialProvider, IMessageDialogFactory messageDialogs) { _navigator = navigator; _cache = cache; _credentialProvider = credentialProvider; _messageDialogs = messageDialogs; Databases = new ObservableCollection <MenuItemViewModel>(); SettingsCommand = new DelegateCommand(() => _navigator.GoToSettings()); OpenCommand = new DelegateCommand(async() => { try { var db = await _cache.AddDatabaseAsync(); if (db != null) { AddDatabaseEntry(db); } } catch (DatabaseAlreadyExistsException) { await _messageDialogs.DatabaseAlreadyExistsAsync(); } }); _cache.GetDatabaseFilesAsync().ContinueWith(r => { if (r.IsFaulted) { return; } foreach (var item in r.Result) { AddDatabaseEntry(item); } }); }
public GuildMemberCache(IGuildService guildService, IMemoryCache memoryCache, IDatabaseCache dbCache, IKeyedResourceManager resourceManager) { this.cache = new DbMemCachedResource <IEnumerable <BlizzardPlayer> >(TimeSpan.FromDays(1.0), dbCache, memoryCache, resourceManager); this.guildService = guildService; }
public GuildCache(IGuildService guildService, IMemoryCache memoryCache, IDatabaseCache dbCache, IKeyedResourceManager resourceManager) { this.cache = new DbMemCachedResource <GuildSlim>(TimeSpan.FromDays(1.0), dbCache, memoryCache, resourceManager); this.guildService = guildService; }
public SimpleDatabaseCache(IDatabaseCache cache, INavigator navigator) { _cache = cache; _navigator = navigator; }
public PostController(ForumDbContext forumDbContext, IDatabaseCache databaseCache) { _forumDbContext = forumDbContext; _databaseCache = databaseCache; }
public DatabaseCacheWithMemoryCache(TimeSpan expiresAfter, IDatabaseCache databaseCache, IMemoryCache memoryCache) { this.memoryCache = memoryCache; this.dbCache = databaseCache; }
public DbMemCachedResource(TimeSpan expiresAfter, IDatabaseCache databaseCache, IMemoryCache memoryCache, IKeyedResourceManager resourceManager) { this.expiresAfter = expiresAfter; this.cache = new DatabaseCacheWithMemoryCache(expiresAfter, databaseCache, memoryCache); this.resourceManager = resourceManager; }
public DatabaseDomainService(IDatabaseRepository databaseRepository, IDatabaseCache databaseCache) { _databaseRepository = databaseRepository; _databaseCache = databaseCache; }
public RealmsCache(IBlizzardService blizzardService, IMemoryCache memoryCache, IDatabaseCache dbCache, IKeyedResourceManager resourceManager) { this.cache = new DbMemCachedResource <IEnumerable <Realm> >(TimeSpan.FromDays(1.0), dbCache, memoryCache, resourceManager); this.blizzardService = blizzardService; }