-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Backend for Heat Map #75
base: master
Are you sure you want to change the base?
Conversation
server/src/main/java/com/google/musicanalysis/site/YoutubeGenres.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -96,9 +96,13 @@ protected void doGet(HttpServletRequest req, HttpServletResponse res) | |||
JsonObject likedVideoRes; | |||
JsonArray videos; | |||
YoutubeGenres genreAnalysis = new YoutubeGenres(); | |||
// needed to keep track of likedMusicHistory for heat map | |||
int videosRetrieved = 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
consider renaming to numVideosRetrieved
, videosRetrieved
sounds like a list of the retrieved videos
@@ -31,9 +35,12 @@ public YoutubeGenres() { | |||
* parses through youtube liked videos json array, | |||
* updates hash map to contain frequency count of each music genre | |||
* @param videos json array of youtube liked videos | |||
* @param firstVideoCount the number of videos retrieved before this http call |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
consider renaming firstVideoCount
to initialNumVideos
. firstVideoCount
sounds like it could be the index of the first video, or some count associated with the first video in the list
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1. Probably something like "currentVideoIndex" will be clearest
@@ -68,12 +75,17 @@ protected void calculateMusicCount(JsonArray videos) { | |||
} | |||
} | |||
|
|||
if (isMusic && totalSubgenres == 0) { | |||
if (isMusic) { | |||
// likedMusicHistory records video numbers that are music |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think you need this comment, you already have a comment explaining what likedMusicHistory
is when you first initialize it
@@ -96,9 +96,13 @@ protected void doGet(HttpServletRequest req, HttpServletResponse res) | |||
JsonObject likedVideoRes; | |||
JsonArray videos; | |||
YoutubeGenres genreAnalysis = new YoutubeGenres(); | |||
// needed to keep track of likedMusicHistory for heat map |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this comment doesn't really make sense to me, since it's not "keeping track" of likedMusicHistory
but being used by it. likedMusicHistory
also isn't part of this file, so that could come of as confusing to someone only looking at this file. consider rephrasing to something like "used to determine the position of a newly retrieved video in comparison to already retrieved videos while obtaining more videos in segments"
@@ -111,7 +115,9 @@ protected void doGet(HttpServletRequest req, HttpServletResponse res) | |||
} | |||
|
|||
videos = likedVideoRes.getAsJsonArray("items"); | |||
genreAnalysis.calculateMusicCount(videos); | |||
// videosRetrieved keeps track of music video order in genreAnalysis |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't need this comment since you already have a comment defining what this variable is when you initiated it
@@ -31,9 +35,12 @@ public YoutubeGenres() { | |||
* parses through youtube liked videos json array, | |||
* updates hash map to contain frequency count of each music genre | |||
* @param videos json array of youtube liked videos | |||
* @param firstVideoCount the number of videos retrieved before this http call |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1. Probably something like "currentVideoIndex" will be clearest
} | ||
} | ||
return; | ||
return videosSize; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can get this info from the parent function. No need to return it here, and that in fact obscures what this function is doing, since it analyzes the videos but also returns the total number. Someone interacting with this function will likely write:
totalVideos += calculateMusicVideos(videos, totalVideos);
This means 2 independent things are happening on one line that aren't strictly tied together. More clear is:
calculateMusicVideos(videos, totalVideos);
totalVideos += videos.size();
videosRetrieved += genreAnalysis | ||
.calculateMusicCount(videos, videosRetrieved); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See comment above. This should be split into 2 separate lines.
Implemented MVP backend necessary for heat map
likedMusicHistory
array list needed for heat map