-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release/1.2.0 #86
Merged
Merged
Release/1.2.0 #86
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…getUserByEmail" Renomeie o método "getUser" para "getUserById" para maior clareza. Além disso, introduza o método "getUserByEmail" para habilitar a busca de usuários por e-mail. Adicione mensagens de erro correspondentes e atualize os testes unitários para cobrir essas mudanças.
… UserServiceContract Consolidei a lógica de busca e criação de entidades de usuário usando UserServiceContract em vez do repositório diretamente. Isso melhora a separação de responsabilidades e facilita a manutenção do código, além de garantir maior coesão entre os componentes do sistema.
Incluí uma verificação para garantir que o email não seja nulo ou vazio antes de procurar um usuário no método findUserEntityByUserEmail. Adicionei testes unitários para casos em que o email é encontrado, não encontrado, e nulo, garantindo a robustez do método.
feat/i66 ♻️ [REST] - Adequação do UserEntityServiceImpl para uso do UserServiceContract
…to de entidades Adiciona métodos para converter contratos de abrigos em entidades de abrigos e vice-versa. Refatora o processo de criação de abrigos para utilizar `ShelterServiceContract` e melhora logs de erro e sucesso. Remove o método obsoleto `mapShelterAndSaveToRepository`.
…tyServiceImpl` Refatorei o método `appendDonationsToShelter` para usar o `ShelterContract` em vez do `ShelterEntity` e ajustei as chamadas de método conforme necessário. Além disso, adicionei um novo método privado para instanciar `DonationMapper`. Isso melhora a separação de responsabilidades e facilita futuras manutenções.
feat/i67 🎨 [REST] - Adequação do ShelterEntityServiceImpl para uso do ShelterServiceContract
Implementa DonationService e DonationServiceContract para gerenciar doações, encapsulando a lógica de criação de doações e tratamento de exceções. Atualiza a lógica em DonationEntityServiceImpl para utilizar o serviço.
Remova `@BeforeEach` do teste em `DonationServiceTest` e `DonationFactory` de `DonationEntityServiceImpl`. Atualize a documentação para refletir essas mudanças, garantindo clareza e precisão nos comentários do código.
…m feitas melhorias nas mensagens de exceção.
…am feitas melhorias nas mensagens de exceção.
feat/i68 🎨 [CORE/REST] - Criação da Interface DonationServiceContract e Adaptação do DonationEntityServiceImpl
feat/i71 [REST] - Refatoração do Enum ExceptionDetails para Adequação dos HttpStatus
feat/i72 - [REST] - Refatoração da Classe CustomException
Implementação dos serviços relacionados ao endereço e da interface de contrato. Isso inclui a criação de métodos para a construção de objetos Address e lançamento de exceções apropriadas. Além disso, substituído o uso de AddressFactory por AddressServiceContract em AddressEntityServiceImpl.
feat/i69 🎨 [CORE/REST] - Criação da Interface AddressServiceContract e Adaptação do AddressEntityServiceImpl
…rações para URL da Via CEP. Criação da classe `ExternalApiFailureException` para encapsular erros de APIs externas e adição do detalhamento de exceção `CEP_RETRIEVAL_FAILURE`. Atualização do `OpenApiConfig` para versão 1.2.0 e inclusão das configurações de URL da Via CEP no `application.yaml`.
Introduza classes `AddressApiResponse`, `AddressApiResponseDTO`, `HttpAdapter`, `RestTemplateSimpleWebClient`, e `RetrieveAddressAdapter` para lidar com chamadas de API para buscar informações de endereço baseado no CEP. Também atualize o `pom.xml` para excluir essas novas classes da cobertura de testes pelo Sonar.
Crie a interface AddressController com endpoint de obtenção de endereço via código postal. Implemente a classe AddressControllerImpl para gerenciar requisições e conecte-se ao serviço AddressEntityService. Atualize mensagens de exceção relacionadas para refletir mudanças de terminologia.
Inclui o método `restrieveAddress` ao `AddressEntityService` para recuperar endereços usando um CEP fornecido. Implementa testes unitários para garantir o funcionamento correto e tratamento de exceções para CEPs nulos, vazios ou inválidos.
feat/i18 🎨 [REST] - Implantação de Consulta à API externa de CEP
…ementados os testes
feat/i31 [REST] - Criação de Novo Endpoint para Listagem de Abrigos com Paginação.
Adiciona informações detalhadas sobre as novas versões 1.1.0 e 1.2.0 no arquivo Release_Notes.md para melhor acompanhamento das mudanças. Este commit tem como objetivo manter a documentação atualizada com as últimas funcionalidades e correções implementadas.
…sponse e AddressApiResponseDTO Inclui arquivos HTML gerados para a classe AddressApiResponse e seu uso, bem como para AddressApiResponseDTO. Isso fornece documentação detalhada da API, facilitando o entendimento e a utilização dessas classes.
feat/i75 🥇 [RELEASE] - Preparação para a Versão 1.2.0
🔖 [RELEASE] - Preparação para a Versão 1.2.0
Quality Gate passedIssues Measures |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Release 1.2.0
Commit 5bba423:
Este commit atualiza a cobertura de código do Jacoco e adiciona novas informações no arquivo Release_Notes.md.
Arquivos Alterados:
pom.xml
,Release_Notes.md
Alterações:
pom.xml
.Release_Notes.md
, contendo informações de vários commits e suas respectivas mudanças.Nota: A principal ênfase deste commit é adicionar novas informações de commits no arquivo
Release_Notes.md
e fazer atualizações na cobertura de código do Jacoco no arquivopom.xml
.Commit 33563e3:
Este commit renomeia o método "getUser" para "getUserById" para maior clareza. Além disso, introduz o método "getUserByEmail" para habilitar a busca de usuários por email. As mensagens de erro correspondentes e os testes unitários foram atualizados para cobrir essas mudanças.
Arquivos Alterados:
UserContractRepository.java
,UserService.java
,UserServiceContract.java
,UserServiceTest.java
Alterações:
UserService
eUserServiceContract
foi renomeado para "getUserById".UserContractRepository
para buscar usuários por email.UserService
eUserServiceContract
para buscar usuários por email.UserServiceTest
.Nota: Este commit foca na introdução da funcionalidade de busca de usuários por email, enquanto melhora a clareza ao renomear o método de busca por ID de usuário.
Commit 004c7ee:
Neste commit foi feita a refatoração da busca e criação de entidade de usuário para usar
UserServiceContract
ao invés do repositório diretamente. Isso foi realizado com o objetivo de melhorar a separação de responsabilidades, facilitar a manutenção de código e garantir maior coesão entre os componentes do sistema.Arquivos Alterados:
UserRepository.java
,UserEntityServiceImpl.java
,UserEntityServiceImplTest.java
Alterações:
Em
UserRepository.java
foi implementado o métodofindUserEntityByUserEmail
.Na classe
UserEntityServiceImpl.java
foram realizadas as seguintes alterações:searchUserByEmail
, buscou-se o usuário através do métodogetUserByEmail
doUserServiceContract
ao invés de buscar diretamente do repositório.createUserEntityFromCreationRequest
, o usuário é agora criado através do métodocreateUser
doUserServiceContract
ao invés directamente da classeUserFactory
.checkIfEmailAlreadyInUse
, verifica-se se o usuário existe através do métodogetUserByEmail
doUserServiceContract
.Em
UserEntityServiceImplTest.java
, os testes foram atualizados para refletir as alterações emUserEntityServiceImpl.java
.Resumo: Este commit concentra-se em refatorar a maneira como os usuários são buscados e criados no sistema, primeiro utilizando um serviço dedicado (
UserServiceContract
) em vez de acessar diretamente o repositório.Commit 8343b4f:
Este commit adiciona métodos para converter contratos de abrigos em entidades de abrigos e vice-versa. A classe
ShelterEntityServiceImpl
foi refatorada para melhorar o mapeamento de entidades. O processo de criação de abrigos agora utilizaShelterServiceContract
, melhorando a separação de responsabilidades. Além disso, logs de erro e sucesso foram aprimorados para facilitar o debug. O método obsoletomapShelterAndSaveToRepository
foi removido.Arquivos Alterados:
ShelterEntityServiceImpl.java
Alterações:
createAndReturnShelterInstance
emShelterEntityServiceImpl
foi alterado para retornarShelterContract
em vez deShelter
.createShelter
emShelterEntityServiceImpl
agora usa oShelterServiceContract
ao criar um novo abrigo.mapShelterAndSaveToRepository
que estava obsoleto.Nota: A principal motivação deste commit é melhorar o mapeamento de entidades e o uso de contratos. Isso facilita futuras manutenções e melhora a separação de responsabilidades.
Commit f40eadc:
Este commit implementa
DonationService
eDonationServiceContract
para gerenciar doações, encapsulando a lógica de criação de doações e tratamento de exceções. Além disso, atualiza a lógica emDonationEntityServiceImpl
para utilizar o serviço.Arquivos Alterados:
DonationEntityServiceImpl.java
,DonationService.java
,DonationServiceContract.java
,DonationServiceTest.java
Alterações:
DonationService
eDonationServiceContract
emDonationEntityServiceImpl
.DonationService
que implementa a interfaceDonationServiceContract
. Esta classe é responsável por gerenciar as operações relacionadas às doações.DonationServiceContract
foi criada para definir um contrato para a criação de doações.DonationServiceTest
para a classeDonationService
.Nota: A principal ênfase desta confirmação é melhorar a lógica de criação e gestão das doações, bem como a atualização da classe
DonationEntityServiceImpl
para utilizar o novoDonationService
. Além disso, também foi incluído um Teste Unitário para a nova classe.Commit 0142f05:
Este commit implementa serviços relacionados ao endereço e da interface de contrato. Isso inclui a criação de métodos para a construção de objetos Address e lançamento de exceções apropriadas. Além disso, foi substituído o uso de
AddressFactory
porAddressServiceContract
emAddressEntityServiceImpl
.Arquivos Alterados:
AddressEntityServiceImpl.java
,AddressService.java
,AddressServiceContract.java
,AddressServiceTest.java
Alterações:
AddressServiceContract
que define um contrato para um serviço responsável pelo gerenciamento de endereços na aplicação.AddressService
que implementa aAddressServiceContract
. Esta classe é responsável por fornecer os serviços relacionados ao endereço e implementa todas as assinaturas de métodos definidas na interface.AddressEntityServiceImpl
. Substituído o uso deAddressFactory
porAddressServiceContract
para criação de novas instâncias do objetoAddress
.AddressServiceTest
para testar o serviçoAddressService
.Nota: A principal ênfase deste commit é melhorar a lógica de serviço dos endereços e padronizar as regras de negócio ao criar novos endereços.
Commit f2b00eb:
Este commit adiciona o tratamento de erros para APIs externas e as configurações da URL do serviço Via CEP. Inclui a criação da classe
ExternalApiFailureException
para lidar com os erros das APIs externas, adiciona os detalhes da exceçãoCEP_RETRIEVAL_FAILURE
e atualiza a classeOpenApiConfig
para a versão 1.2.0.Arquivos Alterados:
OpenApiConfig.java
,ExceptionDetails.java
,ExternalApiFailureException.java
,application.yaml
Alterações:
v1.0.0
parav1.2.0
no arquivoOpenApiConfig.java
.Tag
relacionada a "Endereços" na lista de tags emOpenApiConfig.java
.CEP_RETRIEVAL_FAILURE
ao enumExceptionDetails.java
.ExternalApiFailureException
representando falhas de APIs externas.application.yaml
.Nota: Este commit foi focado em lidar com falhas ao interagir com APIs externas, em particular com o serviço Via CEP. A estratégia adotada foi criar uma nova exceção para encapsular essas falhas e adicionar a URL do serviço Via CEP ao arquivo de configurações do projeto.
Commit c1b0082:
Este commit adiciona novas classes para lidar com a recuperação de informações de endereços através de chamadas de API. As classes
AddressApiResponse
,AddressApiResponseDTO
,HttpAdapter
,RestTemplateSimpleWebClient
eRetrieveAddressAdapter
foram introduzidas. O arquivopom.xml
também foi atualizado para excluir essas novas classes da cobertura de testes do Sonar.Arquivos Alterados:
pom.xml
,HttpAdapter.java
,RestTemplateSimpleWebClient.java
,RetrieveAddressAdapter.java
,AddressApiResponseDTO.java
,AddressApiResponse.java
Alterações:
pom.xml
para excluir a nova pastaadapter
da cobertura de testes do Sonar.HttpAdapter
que fornece a base para adaptadores HTTP, incluindo a configuração de cabeçalhos HTTP e a instância doRestTemplateSimpleWebClient
a ser usada para chamadas HTTP.RestTemplateSimpleWebClient
que encapsula simplesmente a classeRestTemplate
do Spring Framework para realizar requisições HTTP.RetrieveAddressAdapter
class, which extendsHttpAdapter
and is responsible for retrieving address information based on the provided ZIP code.AddressApiResponse
para representar as respostas da API ao recuperar informações de endereços. A classe possui um método para converter a resposta da API para uma instânciaAddressApiResponseDTO
.AddressApiResponseDTO
para representar um DTO (Data Transfer Object) da resposta da API de endereços.Nota: Este commit se concentra em introduzir as classes necessárias para efetuar chamadas à API para recuperar informações de endereços baseadas no CEP. Essas classes novas permitem a recuperação de endereço e a subsequente conversão das respostas da API em DTOs para uso mais adiante no sistema.
Commit b2ca415:
Este commit adiciona o controlador de endereços e a implementação de
AddressController
. Contém a interfaceAddressController
com um endpoint para obter o endereço pelo código postal. Além disso, implementa a classeAddressControllerImpl
para gerenciar solicitações e se conectar ao serviçoAddressEntityService
. Também atualiza as mensagens de exceção relacionadas para refletir as mudanças na terminologia.Arquivos Alterados:
RetrieveAddressAdapter.java
,AddressController.java
,AddressControllerImpl.java
,AddressApiResponseDTO.java
,ExceptionDetails.java
Alterações:
CEP_RETRIEVAL_FAILURE
foi renomeada paraZIPCODE_RETRIEVAL_FAILURE
no arquivoRetrieveAddressAdapter.java
e também na enumExceptionDetails.java
.AddressController.java
eAddressControllerImpl.java
para controle de operações de endereço.AddressController.java
, foi criado um novo endpoint a partir do métodoretrieveAddress
, mapeado para /{zipcode}, onde zipcode é um parâmetro que define o código postal do endereço a ser obtido.AddressControllerImpl.java
, implementou-se o métodoretrieveAddress
deAddressController.java
, que solicita o serviçoAddressEntityService
.AddressApiResponseDTO.java
.Nota: Este commit visa introduzir a capacidade de obter informações de endereços usando o código postal através de um novo endpoint.
Commit a0161d3:
Este commit adiciona o método
restrieveAddress
noAddressEntityService
para recuperar endereços usando um CEP fornecido. Implementa também testes unitários para garantir o funcionamento correto e tratamento de exceções para CEPs nulos, vazios ou inválidos.Arquivos Alterados:
AddressEntityService.java
,AddressEntityServiceImpl.java
,AddressEntityServiceImplTest.java
Alterações:
Em:
AddressEntityService.java
restrieveAddress
, usado para recuperar um endereço através de um CEP fornecido.Em:
AddressEntityServiceImpl.java
restrieveAddress
que utiliza o serviçoRetrieveAddressAdapter
para realizar a requisição e obter a resposta correspondente.AddressApiResponseDTO
e retorna ao chamador.Em:
AddressEntityServiceImplTest.java
restrieveAddress
.Nota: A principal ênfase desta confirmação é a recuperação de endereços usando um CEP por meio do método
restrieveAddress
.Commit 905f606:
Este commit introduz novas funcionalidades de paginação ao método
findAll
no repositórioShelterRepository
, além de implementar testes correspondentes. A adição dos métodos respectivos facilita a recuperação paginada de todos os registros de abrigos cadastrados.Arquivos Alterados:
ShelterController.java
,ShelterControllerImpl.java
,ShelterRepository.java
,ShelterEntityService.java
,ShelterEntityServiceImpl.java
,ShelterRepositoryIntegrationTest.java
Alterações:
findAll
com a anotação@GetMapping
, para suportar requisições paginadas de abrigos.findAll
que chama o serviço para obter os dados paginados.Page<ShelterEntity> findAll(Pageable pageable)
, permitindo consultas paginadas ao banco de dados.Page<ShelterInformationResponse> findAll(Pageable pageable)
, que define a lógica de serviço para a paginação.findAll
, que converte as entidades de abrigo em DTOs paginados.Nota: A principal ênfase deste commit é a implementação da funcionalidade de paginação para os registros de abrigos e os testes associados, melhorando a eficiência no gerenciamento e recuperação de dados.