View Javadoc

1   package de.tivsource.page.entity.location;
2   
3   import javax.persistence.Column;
4   import javax.persistence.Embeddable;
5   
6   /**
7    * 
8    * @author Marc Michele
9    *
10   */
11  @Embeddable
12  public class HourMinute implements Comparable<HourMinute> {
13  
14  	@Column(length=2)
15  	private Integer hour;
16  
17  	@Column(length=2)
18  	private Integer minute;
19  
20  	public Integer getHour() {
21  		return hour;
22  	}
23  
24  	public void setHour(Integer hour) {
25  		this.hour = hour;
26  	}
27  
28  	public Integer getMinute() {
29  		return minute;
30  	}
31  
32  	public void setMinute(Integer minute) {
33  		this.minute = minute;
34  	}
35  
36      @Override
37      public int compareTo(HourMinute o) {
38          // Wenn die Stunde des übergebenen Objektes kleiner ist
39          if(o.hour < hour) {
40              return 1;
41          }
42          // Wenn die Stunde des übergebenen Objektes gößer ist
43          if(o.hour > hour) {
44              return -1;
45          }
46          // Wenn die Minuten des übergebenen Objektes kleiner sind
47          if(o.minute < minute) {
48              return 1;
49          }
50          // Wenn die Minuten des übergebenen Objektes größer sind
51          if(o.minute > minute) {
52              return -1;
53          }
54          return 0;
55      }
56  
57      @Override
58      public boolean equals(Object obj) {
59          // Wenn die Objekte gleich sind.
60          if(this == obj) {
61              return true;
62          }
63          // Wenn das Objekt null ist.
64          if(obj == null) {
65              return false;
66          }
67          // Wenn es sich nicht um die gleich Klasse handelt.
68          if (!(obj instanceof HourMinute)) {
69              return false;
70          }
71          // Objekt Casting
72          HourMinute other = (HourMinute) obj;
73          // Wenn der Inhalt Identisch ist dann ist das Objekt gleich.
74          if(this.hour.equals(other.hour) &&
75             this.minute.equals(other.minute)){
76              return true;
77          }
78          return false;
79      }
80  
81      @Override
82      public int hashCode() {
83          int hash = 1;
84          hash = hash * 7 * (hour == null ? 0 : hour.hashCode());
85          hash = hash * 7 * (minute == null ? 0 : minute.hashCode());
86          return hash;
87      }
88  
89      @Override
90      public String toString() {
91          String hourString = hour < 10 ? "0" + hour : hour.toString();
92          String minuteString = minute < 10 ? "0" + minute : minute.toString();
93          return hourString + ":" + minuteString;
94      }
95      
96  }// End class