More artist details

This commit is contained in:
simon 2019-06-08 17:27:04 -04:00
parent 0e83b37672
commit 093e3fcd6c
2 changed files with 5 additions and 1 deletions

View File

@ -11,6 +11,8 @@ public class ArtistDetails {
} }
public String name; public String name;
public String comment;
public long year;
public List<Release> releases; public List<Release> releases;
public List<Tag> tags; public List<Tag> tags;
} }

View File

@ -83,7 +83,7 @@ public class MusicDatabase extends AbstractBinder {
"MATCH (a:Artist {id: $mbid})-[:CREDITED_FOR]->(r:Release)\n" + "MATCH (a:Artist {id: $mbid})-[:CREDITED_FOR]->(r:Release)\n" +
"WITH collect({id: ID(r), mbid:r.id, name:r.name, year:r.year, labels:labels(r)}) as releases, a\n" + "WITH collect({id: ID(r), mbid:r.id, name:r.name, year:r.year, labels:labels(r)}) as releases, a\n" +
"OPTIONAL MATCH (a)-[r:IS_TAGGED]->(t:Tag)\n" + "OPTIONAL MATCH (a)-[r:IS_TAGGED]->(t:Tag)\n" +
"RETURN a {name:a.name, releases:releases, tags:collect({weight: r.weight, name: t.name, id:ID(t)})}\n" + "RETURN a {name:a.name, year:a.year, comment:a.comment, releases:releases, tags:collect({weight: r.weight, name: t.name, id:ID(t)})}\n" +
"LIMIT 1", "LIMIT 1",
params); params);
@ -95,6 +95,8 @@ public class MusicDatabase extends AbstractBinder {
Map<String, Object> map = result.next().get("a").asMap(); Map<String, Object> map = result.next().get("a").asMap();
details.name = (String) map.get("name"); details.name = (String) map.get("name");
details.comment = (String) map.get("comment");
details.year = (long) map.get("year");
details.releases.addAll( details.releases.addAll(
((List<Map>) map.get("releases")) ((List<Map>) map.get("releases"))
.stream() .stream()