package com.towel.swing.table.adapter;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* @author Vinicius Godoy
*/
public class DateView implements Comparable<DateView>
{
private Date date;
private DateFormat format;
public DateView(Date date)
{
this(date, DateFormat.getDateInstance(DateFormat.DEFAULT));
}
public DateView(Calendar cal)
{
this(cal, DateFormat.getDateInstance(DateFormat.DEFAULT));
}
public DateView(Date date, String format)
{
this(date, new SimpleDateFormat(format));
}
public DateView(Calendar cal, String format)
{
this(cal.getTime(), new SimpleDateFormat(format));
}
public DateView(Date date, DateFormat format)
{
this.date = date;
this.format = format;
}
public DateView(Calendar cal, DateFormat format)
{
this(cal.getTime(), format);
}
public int compareTo(DateView o)
{
return date.compareTo(o.date);
}
@Override
public String toString()
{
return format.format(date);
}
@Override
public int hashCode()
{
return (date == null) ? 0 : toString().hashCode();
}
@Override
public boolean equals(Object obj)
{
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
final DateView other = (DateView) obj;
return toString().equals(other.toString());
}
}