DateDTO.java
package com.tradecloud.dto.letterofcredit.integration;
import java.io.Serializable;
import java.util.Calendar;
import java.util.Date;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement()
public class DateDTO implements Serializable {
private int year;
private int month;
private int day;
public DateDTO(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
this.setYear(calendar.get(Calendar.YEAR));
this.setMonth(calendar.get(Calendar.MONTH) + 1);
this.setDay(calendar.get(Calendar.DAY_OF_MONTH));
}
public DateDTO() {
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public int getMonth() {
return month;
}
public void setMonth(int month) {
if (month < 1 || month > 12) {
throw new IllegalArgumentException("");
}
this.month = month;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
public Date toDate() {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, day);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
@Override
public int hashCode() {
return super.hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (!(obj instanceof DateDTO)) {
return false;
}
DateDTO other = (DateDTO) obj;
return other.getDay() == getDay()
&& other.getMonth() == getMonth()
&& other.getYear() == getYear();
}
@Override
public String toString() {
return Integer.toString(getYear()) + "-"
+ Integer.toString(getMonth()) + "-"
+ Integer.toString(getDay());
}
}