From 99c2391aab853a3ebf6da6036be9a275adb04bae Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 22 Jun 2019 17:08:57 -0400 Subject: [PATCH] refactoring, labels support, autocomplete for tags --- .../java/net/simon987/musicgraph/Main.java | 1 + .../musicgraph/entities/ArtistDetails.java | 14 +- .../simon987/musicgraph/entities/Label.java | 14 ++ .../entities/LabelSearchResult.java | 7 + .../musicgraph/entities/RelatedLabels.java | 16 ++ .../musicgraph/entities/RelatedTags.java | 16 ++ .../musicgraph/entities/ReleaseDetails.java | 2 +- .../net/simon987/musicgraph/entities/Tag.java | 6 +- .../musicgraph/entities/WeightedTag.java | 11 + .../simon987/musicgraph/io/MusicDatabase.java | 194 ++++++++++++++++-- .../musicgraph/webapi/ArtistController.java | 10 - .../musicgraph/webapi/AutoCompleteData.java | 4 +- .../webapi/AutocompleteController.java | 35 ++++ ...istOverview.java => AutocompleteLine.java} | 5 +- .../musicgraph/webapi/LabelController.java | 44 ++++ .../musicgraph/webapi/TagController.java | 12 +- 16 files changed, 349 insertions(+), 42 deletions(-) create mode 100644 src/main/java/net/simon987/musicgraph/entities/Label.java create mode 100644 src/main/java/net/simon987/musicgraph/entities/LabelSearchResult.java create mode 100644 src/main/java/net/simon987/musicgraph/entities/RelatedLabels.java create mode 100644 src/main/java/net/simon987/musicgraph/entities/RelatedTags.java create mode 100644 src/main/java/net/simon987/musicgraph/entities/WeightedTag.java create mode 100644 src/main/java/net/simon987/musicgraph/webapi/AutocompleteController.java rename src/main/java/net/simon987/musicgraph/webapi/{ArtistOverview.java => AutocompleteLine.java} (59%) create mode 100644 src/main/java/net/simon987/musicgraph/webapi/LabelController.java diff --git a/src/main/java/net/simon987/musicgraph/Main.java b/src/main/java/net/simon987/musicgraph/Main.java index 95ffddd..8161554 100644 --- a/src/main/java/net/simon987/musicgraph/Main.java +++ b/src/main/java/net/simon987/musicgraph/Main.java @@ -29,6 +29,7 @@ public class Main { rc.registerClasses(Index.class); rc.registerClasses(ArtistController.class); + rc.registerClasses(AutocompleteController.class); rc.registerClasses(CoverController.class); rc.registerClasses(TagController.class); rc.registerClasses(ReleaseController.class); diff --git a/src/main/java/net/simon987/musicgraph/entities/ArtistDetails.java b/src/main/java/net/simon987/musicgraph/entities/ArtistDetails.java index d3b3eed..5426f3d 100644 --- a/src/main/java/net/simon987/musicgraph/entities/ArtistDetails.java +++ b/src/main/java/net/simon987/musicgraph/entities/ArtistDetails.java @@ -5,14 +5,16 @@ import java.util.List; public class ArtistDetails { - public ArtistDetails() { - releases = new ArrayList<>(); - tags = new ArrayList<>(); - } - public String name; public String comment; public long year; public List releases; - public List tags; + public List tags; + public List