All Known Implementing Classes:
AddressControllerImpl

public interface AddressController
Interface para controlar operações de endereço.

Esta interface fornece uma abstração para as operações realizadas em um endereço. As operações realizadas por esta interface incluem a recuperação de um endereço com base em seu código postal/zipe code.

Esta interface faz uso de um serviço externo para buscar um endereço e retorna uma representação do endereço como um AddressApiResponseDTO. Cada operação é mapeada para um endpoint específico para fácil uso via REST.

Para usar essa interface, um cliente REST precisará acessar o endpoint correspondente e fornecer os parâmetros necessários.

Since:
1.2.0
Author:
diegoneves
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.http.ResponseEntity<AddressApiResponseDTO>
    Obtém um dado Endereço, fazendo uso de um serviço externo.

    Este é um método HTTP GET que é mapeado para o seguinte URL: /{zipcode}.
  • Method Details

    • retrieveAddress

      @GetMapping("/{zipcode}") org.springframework.http.ResponseEntity<AddressApiResponseDTO> retrieveAddress(@PathVariable("zipcode") String zipcode)
      Obtém um dado Endereço, fazendo uso de um serviço externo.

      Este é um método HTTP GET que é mapeado para o seguinte URL: /{zipcode}. Ele usa a anotação @Operation para fornecer uma descrição de alto nível da operação e a anotação @ApiResponses para descrever as possíveis respostas da operação.
      Parameters:
      zipcode - O código postal do local para o qual se quer obter a informação do endereço. É um valor obrigatório e é informado na URL.
      Returns:
      ResponseEntity<AddressApiResponseDTO> O objeto AddressApiResponseDTO encapsulado em um ResponseEntity. O objeto AddressApiResponse contém informações detalhadas sobre o endereço. O ResponseEntity é uma extensão do HttpEntity que adiciona um código HttpStatus a ele. A ResponseEntity retorna o endereço obtido com sucesso!
      Throws:
      ExternalApiFailureException - Se o endereço com o código postal fornecido não for encontrado.
      See Also: