// Path: src/main/java/com/github/marcelothebuilder/webpedidos/model/cliente/Cliente.java
// @Entity
// @Table(name = "cliente", uniqueConstraints = {
// 		@UniqueConstraint(name = "uk_doc_receita_federal", columnNames = { "doc_receita_federal" }),
// 		@UniqueConstraint(name = "uk_email", columnNames = { "email" }) })
// public class Cliente implements Serializable {
// 	private static final long serialVersionUID = 1L;
// 	private Long codigo;
// 	private List<Endereco> endereco = new ArrayList<>();
// 	private String nome;
// 	private String email;
// 	private String documentoReceitaFederal;
// 	private TipoPessoa tipoPessoa;
// 
// 	@Id
// 	@GeneratedValue(strategy = GenerationType.IDENTITY)
// 	public Long getCodigo() {
// 		return codigo;
// 	}
// 
// 	public void setCodigo(Long codigo) {
// 		this.codigo = codigo;
// 	}
// 
// 	@OneToMany(mappedBy = "cliente", cascade = CascadeType.ALL, orphanRemoval = true)
// 	public List<Endereco> getEndereco() {
// 		return endereco;
// 	}
// 
// 	public void setEndereco(List<Endereco> endereco) {
// 		this.endereco = endereco;
// 	}
// 
// 	@NotBlank
// 	@Column(nullable = false, length = 255)
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	@NotBlank
// 	@Column(nullable = false, length = 255)
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 	
// 	@NotBlank
// 	@Column(nullable = false, length = 14, name = "doc_receita_federal")
// 	public String getDocumentoReceitaFederal() {
// 		return documentoReceitaFederal;
// 	}
// 
// 	public void setDocumentoReceitaFederal(String documentoReceitaFederal) {
// 		this.documentoReceitaFederal = documentoReceitaFederal;
// 	}
// 
// 	@NotNull
// 	@Enumerated(EnumType.STRING)
// 	@Column(nullable = false, length = 10, name = "tipo_pessoa")
// 	public TipoPessoa getTipoPessoa() {
// 		return tipoPessoa;
// 	}
// 
// 	public void setTipoPessoa(TipoPessoa tipoPessoa) {
// 		this.tipoPessoa = tipoPessoa;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 		final int prime = 31;
// 		int result = 1;
// 		result = prime * result + ((codigo == null) ? 0 : codigo.hashCode());
// 		return result;
// 	}
// 
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (this == obj)
// 			return true;
// 		if (obj == null)
// 			return false;
// 		if (!(obj instanceof Cliente))
// 			return false;
// 		Cliente other = (Cliente) obj;
// 		if (codigo == null) {
// 			if (other.codigo != null)
// 				return false;
// 		} else if (!codigo.equals(other.codigo))
// 			return false;
// 		return true;
// 	}
// 
// }


import java.io.Serializable;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.ForeignKey;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.NotBlank;
import com.github.marcelothebuilder.webpedidos.model.cliente.Cliente;
import com.github.marcelothebuilder.webpedidos.validation.Cep;
package com.github.marcelothebuilder.webpedidos.model.endereco;





@Entity
@Table(name="endereco")
public class Endereco implements Serializable {
	private static final long serialVersionUID = 1L;
	private Long codigo;
	private Cidade cidade;
	private String logradouro;
	private String complemento;
	private String cep;
	private Integer numero;
// Path: src/main/java/com/github/marcelothebuilder/webpedidos/model/cliente/Cliente.java
// @Entity
// @Table(name = "cliente", uniqueConstraints = {
// 		@UniqueConstraint(name = "uk_doc_receita_federal", columnNames = { "doc_receita_federal" }),
// 		@UniqueConstraint(name = "uk_email", columnNames = { "email" }) })
// public class Cliente implements Serializable {
// 	private static final long serialVersionUID = 1L;
// 	private Long codigo;
// 	private List<Endereco> endereco = new ArrayList<>();
// 	private String nome;
// 	private String email;
// 	private String documentoReceitaFederal;
// 	private TipoPessoa tipoPessoa;
// 
// 	@Id
// 	@GeneratedValue(strategy = GenerationType.IDENTITY)
// 	public Long getCodigo() {
// 		return codigo;
// 	}
// 
// 	public void setCodigo(Long codigo) {
// 		this.codigo = codigo;
// 	}
// 
// 	@OneToMany(mappedBy = "cliente", cascade = CascadeType.ALL, orphanRemoval = true)
// 	public List<Endereco> getEndereco() {
// 		return endereco;
// 	}
// 
// 	public void setEndereco(List<Endereco> endereco) {
// 		this.endereco = endereco;
// 	}
// 
// 	@NotBlank
// 	@Column(nullable = false, length = 255)
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	@NotBlank
// 	@Column(nullable = false, length = 255)
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 	
// 	@NotBlank
// 	@Column(nullable = false, length = 14, name = "doc_receita_federal")
// 	public String getDocumentoReceitaFederal() {
// 		return documentoReceitaFederal;
// 	}
// 
// 	public void setDocumentoReceitaFederal(String documentoReceitaFederal) {
// 		this.documentoReceitaFederal = documentoReceitaFederal;
// 	}
// 
// 	@NotNull
// 	@Enumerated(EnumType.STRING)
// 	@Column(nullable = false, length = 10, name = "tipo_pessoa")
// 	public TipoPessoa getTipoPessoa() {
// 		return tipoPessoa;
// 	}
// 
// 	public void setTipoPessoa(TipoPessoa tipoPessoa) {
// 		this.tipoPessoa = tipoPessoa;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 		final int prime = 31;
// 		int result = 1;
// 		result = prime * result + ((codigo == null) ? 0 : codigo.hashCode());
// 		return result;
// 	}
// 
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (this == obj)
// 			return true;
// 		if (obj == null)
// 			return false;
// 		if (!(obj instanceof Cliente))
// 			return false;
// 		Cliente other = (Cliente) obj;
// 		if (codigo == null) {
// 			if (other.codigo != null)
// 				return false;
// 		} else if (!codigo.equals(other.codigo))
// 			return false;
// 		return true;
// 	}
// 
// }


// Path: src/main/java/com/github/marcelothebuilder/webpedidos/model/endereco/Endereco.java
import java.io.Serializable;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.ForeignKey;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import org.hibernate.validator.constraints.NotBlank;
import com.github.marcelothebuilder.webpedidos.model.cliente.Cliente;
import com.github.marcelothebuilder.webpedidos.validation.Cep;

package com.github.marcelothebuilder.webpedidos.model.endereco;





@Entity
@Table(name="endereco")
public class Endereco implements Serializable {
	private static final long serialVersionUID = 1L;
	private Long codigo;
	private Cidade cidade;
	private String logradouro;
	private String complemento;
	private String cep;
	private Integer numero;
	private Cliente cliente;