View Javadoc

1   package net.sf.r4h.model;
2   
3   import java.util.Date;
4   import java.util.Set;
5   
6   import javax.persistence.CascadeType;
7   import javax.persistence.Entity;
8   import javax.persistence.JoinColumn;
9   import javax.persistence.JoinTable;
10  import javax.persistence.ManyToMany;
11  import javax.persistence.Table;
12  
13  @Entity
14  @Table(name = "USERS")
15  public class User extends BaseEntity {
16  	@ManyToMany(cascade = CascadeType.ALL)
17  	@JoinTable(name = "USER_ITEMS", joinColumns = @JoinColumn(name = "USER_ID"), inverseJoinColumns = @JoinColumn(name = "ITEM_ID"))
18  	private Set<Item> items;
19  
20  	private boolean active;
21  	
22  	private Date date;
23  	
24  	public Date getDate() {
25  		return date;
26  	}
27  
28  	public void setDate(Date date) {
29  		this.date = date;
30  	}
31  
32  	public boolean isActive() {
33  		return active;
34  	}
35  
36  	public void setActive(boolean active) {
37  		this.active = active;
38  	}
39  
40  	public Set<Item> getItems() {
41  		return items;
42  	}
43  
44  	public void setItems(Set<Item> items) {
45  		this.items = items;
46  	}
47  
48  	@Override
49  	public int hashCode() {
50  		final int prime = 31;
51  		int result = super.hashCode();
52  		result = prime * result + (active ? 1231 : 1237);
53  		result = prime * result + ((date == null) ? 0 : date.hashCode());
54  		result = prime * result + ((items == null) ? 0 : items.hashCode());
55  		return result;
56  	}
57  
58  	@Override
59  	public boolean equals(Object obj) {
60  		if (this == obj)
61  			return true;
62  		if (!super.equals(obj))
63  			return false;
64  		if (getClass() != obj.getClass())
65  			return false;
66  		User other = (User) obj;
67  		if (active != other.active)
68  			return false;
69  		if (date == null) {
70  			if (other.date != null)
71  				return false;
72  		} else if (!date.equals(other.date))
73  			return false;
74  		if (items == null) {
75  			if (other.items != null)
76  				return false;
77  		} else if (!items.equals(other.items))
78  			return false;
79  		return true;
80  	}
81  	
82  	
83  }