diff options
Diffstat (limited to 'src/main/java/br/com/alura/DaysOfCodeSpring/imdbApiClient.java')
| -rw-r--r-- | src/main/java/br/com/alura/DaysOfCodeSpring/imdbApiClient.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/java/br/com/alura/DaysOfCodeSpring/imdbApiClient.java b/src/main/java/br/com/alura/DaysOfCodeSpring/imdbApiClient.java new file mode 100644 index 0000000..d7db714 --- /dev/null +++ b/src/main/java/br/com/alura/DaysOfCodeSpring/imdbApiClient.java @@ -0,0 +1,27 @@ +package br.com.alura.DaysOfCodeSpring; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Component; +import org.springframework.web.client.RestTemplate; + +import java.util.Arrays; +import java.util.List; + +@Component +public class imdbApiClient { + + @Autowired + public RestTemplate restTemplate; + + public List<ApiController.Filme> getBody(String apiKey) throws JsonProcessingException { + String url = "https://imdb-api.com/en/API/Top250Movies/"; + ResponseEntity<String> response = restTemplate.getForEntity(url + apiKey, String.class); + String parsed = response.getBody().substring(9,response.getBody().length() - 19); + + ObjectMapper objectMapper = new ObjectMapper(); + return Arrays.stream(objectMapper.readValue(parsed, ApiController.Filme[].class)).toList(); + } +} |
