Elaborato_IS/Elaborato_IS/src/Calendar/Day.java

67 lines
1.2 KiB
Java

package Calendar;
import java.util.ArrayList;
import java.util.Iterator;
public class Day implements Iterable<Day>,Comparable<Day> {
private Days Name;
private int ordinal;
private Date date;
private ArrayList<Slot> Slots = new ArrayList<>();
public Day (Date date, int ordinal) {
this.ordinal = ordinal;
this.Name = Days.values()[ordinal-1];
this.date = date;
for (int i = 0 ; i < 6 ; i++) {
Slots.add(new Slot(ActivityType.Empty));
}
}
@Override
public Iterator<Day> iterator() {
return new Iterator<Day>() {
@Override
public boolean hasNext() {
// There' s always a next day
return true;
}
@Override
public Day next() {
if (ordinal == 7) {
return new Day(date.iterator().next(),1);
} else {
return new Day(date.iterator().next(),ordinal+1);
}
}
};
}
@Override
public int compareTo(Day o) {
return this.date.compareTo(o.date);
}
public Days getName() {
return Name;
}
public Date getDate() {
return new Date(date);
}
public int getOrdinal() {
return ordinal;
}
public String toString() {
return Name.toString() + ": " + date.toString();
}
public ArrayList<Slot> getSlots() {
return Slots;
}
}