Elaborato_IS/Elaborato_IS/src/Calendar/Day.java

67 lines
1.2 KiB
Java
Raw Normal View History

2023-10-23 23:03:10 +02:00
package Calendar;
import java.util.ArrayList;
2023-10-23 23:03:10 +02:00
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<>();
2023-10-23 23:03:10 +02:00
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));
}
2023-10-23 23:03:10 +02:00
}
@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() {
2023-11-06 17:02:05 +01:00
return new Date(date);
2023-10-23 23:03:10 +02:00
}
public int getOrdinal() {
return ordinal;
}
public String toString() {
return Name.toString() + ": " + date.toString();
}
public ArrayList<Slot> getSlots() {
return Slots;
}
2023-10-23 23:03:10 +02:00
}