1 /**
2 *
3 */
4 package ar.com.jiji.kaya.model;
5
6 import ar.com.jiji.kaya.enums.TipoDeDocumento;
7
8 /**
9 * Modelo que representa un Documento valido de una persona
10 * @see ar.com.jiji.kaya.enums.TipoDeDocumento
11 * @author Josemil
12 *
13 */
14 public class Documento {
15
16
17 private TipoDeDocumento tipo;
18
19 private long numero;
20
21 protected Documento() {
22 }
23
24 public Documento(TipoDeDocumento tipo, long documento) {
25 this.tipo = tipo;
26 numero = documento;
27 }
28
29 public long getNumero() {
30 return numero;
31 }
32
33 public void setNumero(long numero) {
34 this.numero = numero;
35 }
36
37 public TipoDeDocumento getTipo() {
38 return tipo;
39 }
40
41 public void setTipo(TipoDeDocumento tipoDeDocumento) {
42 this.tipo = tipoDeDocumento;
43 }
44
45 /**
46 * Devuelve la concatenacion del tipo y el numero de documento.
47 */
48 public String toString() {
49 return getTipo() + " " + getNumero();
50 }
51
52
53 /**
54 * comprueba que ambos objetos tengan el mismo tipo y el mismo numero de documento
55 */
56 public boolean equals(Object o) {
57 if (!(o instanceof Documento))
58 return false;
59 Documento tmp = (Documento) o;
60 return getTipo().equals(tmp.getTipo())
61 && getNumero() == tmp.getNumero();
62 }
63 }