Как проиллюстрировать списки массивов в диаграмме последовательности? - PullRequest
0 голосов
/ 24 мая 2018
public boolean uploadResult(Lecturer lecturer, Student student, String result) throws NullPointerException {
    Schedule currentSchedule = scheduleService.findCurrentSchedule();
    if (currentSchedule.getWeek() != 12) {
        throw new IllegalArgumentException("Cannot upload result until the end of the semester.");
    }
    Student stu = studentService.findOne(student);
    List<Enrolment> enrolments = stu.getPerformance();
    Enrolment enrolment = null;
    for (Enrolment e : enrolments) {
        CourseOffering offering = e.getOffering();
        if (offering.getLecturer().equals(lecturer) && offering.getSchedule().equals(currentSchedule)) {
            enrolment = e;
            break;
        }
    }
    if (enrolment == null) {
        throw new NullPointerException("There is no such student in the lecturer's course");
    }
    enrolment.setResult(result);
    studentService.save(student);
    return true;
}

Я пытаюсь понять приведенный выше код, чтобы проиллюстрировать его на диаграмме последовательности, но у меня возникли некоторые затруднения с пониманием некоторых из них, особенно этой части:

List<Enrolment> enrolments = stu.getPerformance();
    Enrolment enrolment = null;
    for (Enrolment e : enrolments) {
        CourseOffering offering = e.getOffering();
        if (offering.getLecturer().equals(lecturer) && 
offering.getSchedule().equals(currentSchedule)) {
            enrolment = e;
            break;

Моя текущая диаграмма последовательности в процессе выполнения (ССЫЛКА)

My current sequence diagram in progress

...