Advertisement
Guest User

Untitled

a guest
Jan 25th, 2020
515
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. public static String dbHelper(String dbhelper) {
  2. switch (dbhelper) {
  3. case "metal":
  4. dbhelper = "https://api.deezer.com/search/playlist?q=metal&limit=50";
  5. break;
  6. case "pop":
  7. dbhelper = "https://api.deezer.com/search/playlist?q=pop&limit=50";
  8. break;
  9. case "classical":
  10. dbhelper = "https://api.deezer.com/search/playlist?q=classical&limit=50";
  11. break;
  12.  
  13. }
  14. return dbhelper;
  15. }
  16.  
  17. public void populate(String dbhelper) throws ParseException, JsonProcessingException, InterruptedException {
  18. String html = DBHelper.dbHelper(dbhelper);
  19. String response = restTemplate.getForObject(
  20. html,
  21. String.class);
  22. JSONParser jsonParser = new JSONParser();
  23. JSONObject jsonObject = (JSONObject) jsonParser.parse(response);
  24. JSONArray jsonArray = (JSONArray) jsonObject.get("data");
  25. for (Object object : jsonArray) {
  26. JSONObject record = (JSONObject) object;
  27. String url = (String) record.get("tracklist");
  28. System.out.println(url);
  29. Thread.sleep(2000);
  30. for (int i = 0; i < jsonArray.size(); i++) {
  31. String response1 = restTemplate.getForObject(
  32. url,
  33. String.class);
  34. JSONObject jsonObject1 = (JSONObject) jsonParser.parse(response1);
  35. JSONArray jsonArray1 = (JSONArray) jsonObject1.get("data");
  36. for (Object trackObject : jsonArray1) {
  37. JSONObject track = (JSONObject) trackObject;
  38. track.put("genre", dbhelper);
  39. }
  40. String track = objectMapper.writeValueAsString(jsonArray1);
  41. List<Track> result = objectMapper.readValue(track, new TypeReference<List<Track>>() {
  42. });
  43. // Save the list into a database
  44. if (Objects.nonNull(result))
  45. result.stream().filter(Objects::nonNull).forEach(element -> trackRepository.saveAndFlush(element));
  46. }
  47. }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement