public AlbumImportResult ImportOne(string url) { PermissionContext.VerifyPermission(PermissionToken.MikuDbImport); MikuDbAlbumContract[] existing = HandleQuery(session => session.Query <MikuDbAlbum>().Select(a => new MikuDbAlbumContract(a)).ToArray()); var importer = new AlbumImporter(existing); var imported = importer.ImportOne(url); if (imported.AlbumContract == null) { return(imported); } HandleTransaction(session => { SysLog(string.Format("importing album from MikuDB with URL '{0}'", url)); var newAlbum = new MikuDbAlbum(imported.AlbumContract); session.Save(newAlbum); }); return(imported); }