Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Component
- class DefaultSWAPIClient implements SWAPIClient {
- private final WebClient client;
- private final String filmURI;
- DefaultSWAPIClient(
- WebClient.Builder builder,
- @Value("${swapi.film}") String filmURI) {
- client = builder.build();
- this.filmURI = filmURI;
- }
- @Override
- public Optional<Film> findByEpisodeId(long episodeId) {
- try {
- return Optional.of(
- client.get()
- .uri(filmURI, uriBuilder -> uriBuilder.build(episodeId))
- .retrieve().bodyToMono(Film.class).block());
- } catch (WebClientResponseException.NotFound ex) {
- return Optional.empty();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement