Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static String dbHelper(String dbhelper) {
- switch (dbhelper) {
- case "metal":
- dbhelper = "https://api.deezer.com/search/playlist?q=metal&limit=50";
- break;
- case "pop":
- dbhelper = "https://api.deezer.com/search/playlist?q=pop&limit=50";
- break;
- case "classical":
- dbhelper = "https://api.deezer.com/search/playlist?q=classical&limit=50";
- break;
- }
- return dbhelper;
- }
- public void populate(String dbhelper) throws ParseException, JsonProcessingException, InterruptedException {
- String html = DBHelper.dbHelper(dbhelper);
- String response = restTemplate.getForObject(
- html,
- String.class);
- JSONParser jsonParser = new JSONParser();
- JSONObject jsonObject = (JSONObject) jsonParser.parse(response);
- JSONArray jsonArray = (JSONArray) jsonObject.get("data");
- for (Object object : jsonArray) {
- JSONObject record = (JSONObject) object;
- String url = (String) record.get("tracklist");
- System.out.println(url);
- Thread.sleep(2000);
- for (int i = 0; i < jsonArray.size(); i++) {
- String response1 = restTemplate.getForObject(
- url,
- String.class);
- JSONObject jsonObject1 = (JSONObject) jsonParser.parse(response1);
- JSONArray jsonArray1 = (JSONArray) jsonObject1.get("data");
- for (Object trackObject : jsonArray1) {
- JSONObject track = (JSONObject) trackObject;
- track.put("genre", dbhelper);
- }
- String track = objectMapper.writeValueAsString(jsonArray1);
- List<Track> result = objectMapper.readValue(track, new TypeReference<List<Track>>() {
- });
- // Save the list into a database
- if (Objects.nonNull(result))
- result.stream().filter(Objects::nonNull).forEach(element -> trackRepository.saveAndFlush(element));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement