private void LoadArtistLinks(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from ArtistLink;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var artist = cache.GetArtist((uint)reader.GetInt64(1)); var name = reader.GetString(2); var relationship = (Relationship)reader.GetInt32(3); var source = (Source)reader.GetInt32(4); var target = reader.GetString(5); if (artist == null) { continue; } var link = new Link(name, relationship, source, target); cache.Add(id, artist, link); artist.AddLink(link); } } }
private void LoadArtistTags(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from ArtistTag;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var artist = cache.GetArtist((uint)reader.GetInt64(1)); var name = reader.GetString(2); var category = (Category)reader.GetInt32(3); var source = (Source)reader.GetInt32(4); if (artist == null) { continue; } var tag = new Tag(name, category, source); cache.Add(id, artist, tag); artist.AddTag(tag); } } }
private void LoadWorks(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from Work;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var type = (WorkType)reader.GetInt32(1); var parent = cache.GetWork((uint)reader.GetInt64(2)); var artist = cache.GetArtist((uint)reader.GetInt64(3)); var name = reader.GetString(4); var year = reader.GetInt16(5); var number = (uint)reader.GetInt64(6); cache.Add(id, new Work() { Type = type, Parent = parent, Artist = artist, Name = name, Year = year, Number = number }); } } LoadWorkLinks(connection, cache); LoadWorkTags(connection, cache); }
private void SaveArtistLink(Artist artist, Link link) { if (artist == null || link == null) { return; } var artistId = cache.GetArtistId(artist); if (artistId == 0) { return; } var id = cache.GetArtistLinkId(link); if (id > 0) { database.UpdateArtistLink(connection, link, id, artistId); } else { id = database.InsertArtistLink(connection, link, artistId); cache.Add(id, artist, link); } }
private void LoadArtists(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from Artist;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var type = (ArtistType)reader.GetInt32(1); var name = reader.GetString(2); var year = reader.GetInt16(3); cache.Add(id, new Artist() { Type = type, Name = name, Year = year }); } } LoadArtistLinks(connection, cache); LoadArtistTags(connection, cache); }
private void LoadArtistLinks(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from ArtistLink;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var artist = cache.GetArtist((uint)reader.GetInt64(1)); var name = reader.GetString(2); var relationship = (Relationship)reader.GetInt32(3); var source = (Source)reader.GetInt32(4); var target = reader.GetString(5); if (artist == null) continue; var link = new Link(name, relationship, source, target); cache.Add(id, artist, link); artist.AddLink(link); } } }
private void LoadArtistTags(IDbConnection connection, GlobalCache cache) { var command = GetCommand(connection, "select * from ArtistTag;"); using (var reader = command.ExecuteReader()) { while (reader.Read()) { var id = (uint)reader.GetInt64(0); var artist = cache.GetArtist((uint)reader.GetInt64(1)); var name = reader.GetString(2); var category = (Category)reader.GetInt32(3); var source = (Source)reader.GetInt32(4); if (artist == null) continue; var tag = new Tag(name, category, source); cache.Add(id, artist, tag); artist.AddTag(tag); } } }