br.com.caelum.stella.boleto.Endereco Maven / Gradle / Ivy
package br.com.caelum.stella.boleto;
import java.io.Serializable;
/**
* Dados do endereço
*
* @author Mario Amaral Github
*
*/
public class Endereco implements Serializable {
private static final long serialVersionUID = 1L;
public String logradouro;
public String bairro;
public String cep;
public String cidade;
public String uf;
private Endereco() {
}
public Endereco(String logradouro, String bairro, String cep, String cidade, String uf) {
super();
this.logradouro = logradouro;
this.bairro = bairro;
this.cep = cep;
this.cidade = cidade;
this.uf = uf;
}
/**
* Retorna o endereço completo no formato:
* logradouro, bairro cep - cidade - uf
*
* @return endereço formatado
*/
public String getEnderecoCompleto(){
return logradouro
+ (bairro != null ? ", " + bairro : "")
+ (cep != null ? " " + cep : "")
+ (cidade != null ? " - " + cidade : "")
+ (uf != null ? " - " + uf : "");
}
/**
* Imprime o endereço no formado do {@link #getEnderecoCompleto()}
*
* @see Object#toString()
* @see #getEnderecoCompleto()
* @return endereço completo
*/
@Override
public String toString() {
return this.getEnderecoCompleto();
}
/**
* Cria um novo endereço
*
* @return this
*/
public static Endereco novoEndereco() {
return new Endereco();
}
/**
* Logradouro (rua, numero e complemento) do endereço
*
* @return logradouro
*/
public String getLogradouro() {
return logradouro;
}
/**
* Define logradouro
*
* @param logradouro logradouro do pagador
* @return this
*/
public Endereco comLogradouro(String logradouro) {
this.logradouro = logradouro;
return this;
}
/**
* Bairro
*
* @return bairro
*/
public String getBairro() {
return bairro;
}
/**
* Define o bairro
*
* @param bairro bairro
* @return this
*/
public Endereco comBairro(String bairro) {
this.bairro = bairro;
return this;
}
/**
* CEP
*
* @return cep
*/
public String getCep() {
return cep;
}
/**
* Define o CEP
*
* @param cep CEP
* @return this
*/
public Endereco comCep(String cep) {
this.cep = cep;
return this;
}
/**
* Cidade
*
* @return cidade
*/
public String getCidade() {
return cidade;
}
/**
* Define cidade
*
* @param cidade cidade
* @return this
*/
public Endereco comCidade(String cidade) {
this.cidade = cidade;
return this;
}
/**
* UF (Estado)
*
* @return Estado
*/
public String getUf() {
return uf;
}
/**
* Define UF(Estado)
*
* @param uf Estado
* @return this
*/
public Endereco comUf(String uf) {
this.uf = uf;
return this;
}
}