private List<ShiftDistributionEntry> getShiftsFor( Integer studentNumber, boolean alreadyDistributed) { final List<ShiftDistributionEntry> result = new ArrayList<ShiftDistributionEntry>(); for (final ShiftDistributionEntry shiftDistributionEntry : getShiftDistributionEntriesSet()) { if (shiftDistributionEntry.getDistributed().booleanValue() == alreadyDistributed && shiftDistributionEntry.getAbstractStudentNumber().equals(studentNumber)) { result.add(shiftDistributionEntry); } } return result; }
public List<ShiftDistributionEntry> getNextFreeShiftDistributions() { final ArrayList<ShiftDistributionEntry> entries = new ArrayList<ShiftDistributionEntry>(getShiftDistributionEntriesSet()); Collections.sort(entries, ShiftDistributionEntry.NUMBER_COMPARATOR); for (final ShiftDistributionEntry shiftDistributionEntry : entries) { if (!shiftDistributionEntry.getDistributed()) { return ShiftDistributionEntry.readByAbstractNumber( shiftDistributionEntry.getAbstractStudentNumber(), getExecutionYear()); } } return Collections.emptyList(); }