}
public void register(final Lesson lesson) {
final LessonSpaceOccupation lessonSpaceOccupation = lesson.getLessonSpaceOccupation();
if (lessonSpaceOccupation != null) {
final Space allocatableSpace = lessonSpaceOccupation.getRoom();
if (allocatableSpace != null) {
final boolean[][] slots = get(allocatableSpace);
final int weekDayOffSet = lesson.getDiaSemana().getDiaSemana().intValue() - 2;
final int startOffSet = getHourOffSet(lesson.getBeginHourMinuteSecond());
final int endOffSet = getHourOffSet(lesson.getEndHourMinuteSecond());
for (int i = startOffSet; i < endOffSet; slots[weekDayOffSet][i++] = true) {
;
}
}
}
for (final LessonInstance lessonInstance : lesson.getLessonInstancesSet()) {
final Space allocatableSpace = lessonInstance.getRoom();
if (allocatableSpace != null) {
final boolean[][] slots = get(allocatableSpace);
final int weekDayOffSet = lessonInstance.getBeginDateTime().getDayOfWeek() - 1;
final int startOffSet = getHourOffSet(lessonInstance.getBeginDateTime());
final int endOffSet = getHourOffSet(lessonInstance.getEndDateTime());