Files
modernkeepass/ModernKeePass/ViewModels/DatabaseVm.cs
bg45 8ada0507c2 Some changes
PAT info
2017-09-13 16:48:05 -04:00

35 lines
965 B
C#

using Windows.Storage;
using ModernKeePassLib;
using ModernKeePassLib.Keys;
using ModernKeePassLib.Serialization;
using ModernKeePassLib.Interfaces;
namespace ModernKeePass.ViewModels
{
public class DatabaseVm
{
private PwDatabase _database = new PwDatabase();
public string Name { get; set; }
public GroupVm RootGroup { get; set; }
public async void Open(StorageFile databaseFile, string password)
{
var key = new CompositeKey();
key.AddUserKey(new KcpPassword(password));
try
{
await _database.Open(IOConnectionInfo.FromFile(databaseFile), key, new NullStatusLogger());
if (!_database.IsOpen) return;
Name = databaseFile.DisplayName;
RootGroup = new GroupVm (_database.RootGroup);
}
finally
{
_database.Close();
}
}
}
}