package com.spacemangames.biomatcher.data;
import java.io.Serializable;
import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.UUID;
@SuppressWarnings("serial")
public class Profile implements Serializable {
private String id;
private String name;
private int year;
private int month;
private int day;
public Profile() {
Calendar c = new GregorianCalendar();
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);
id = UUID.randomUUID().toString();
}
public Profile(String name, int year, int month, int day) {
this.name = name;
this.year = year;
this.month = month;
this.day = day;
id = UUID.randomUUID().toString();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getYear() {
return year;
}
public void setYear(int year) {
this.year = year;
}
public int getMonth() {
return month;
}
public void setMonth(int month) {
this.month = month;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
public long timestamp() {
Calendar c = new GregorianCalendar(year, month, day);
return c.getTimeInMillis();
}
public Date date() {
return new Date(timestamp());
}
public String dateString() {
return DateFormat.getDateInstance().format(date());
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Profile other = (Profile) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}
}