java.lang.Object
diegosneves.github.conectardoacoes.core.domain.shelter.factory.AddressFactory

public class AddressFactory extends Object
Fábrica estática para a criação de instâncias da classe Address.

Esta fábrica oculta a lógica de criação de um endereço, incluindo a geração de um UUID único para cada endereço criado. Ao encapsular o processo de criação de endereços dentro desta fábrica, o código externo é simplificado e a responsabilidade do controle de versões é mantida dentro da classe AddressFactory em vez de ser espalhada por várias partes do programa.

Nota: Esta classe foi projetada para ser usada apenas para a criação de endereços. Não deve ser sub-classificada ou usada como referência. Para criar um novo endereço, use o método create(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String) desta classe.

Since:
1.0.0
Author:
diegoneves
  • Constructor Details

  • Method Details

    • create

      public static Address create(String street, String number, String neighborhood, String city, String state, String zip) throws AddressCreationFailureException
      Método estático para criação de uma nova instância de Address.

      Este método é responsável por criar uma nova instância de Address, que representa um endereço físico, utilizando os parâmetros fornecidos e gerando um UUID para o novo Endereço.

      Parameters:
      street - A string que representa a rua do endereço.
      number - A string que representa o número da residência no endereço.
      neighborhood - A string que representa o bairro do endereço.
      city - A string que representa a cidade do endereço.
      state - A string que representa o estado do endereço.
      zip - A string que representa o código postal do endereço.
      Returns:
      Uma nova instância da classe Address com os parâmetros fornecidos.
      Throws:
      AddressCreationFailureException - Se algum dos parâmetros fornecidos estiver nulo ou em branco, conforme validado pela classe Address.
      See Also: