Сервер оценки

Сервер оценки является ключевым модулем данной программы. Данный модуль представляет собой приложение, написанное в соответствии с паттерном MVC (Model-View-Controller) [33]. Контроллерами (Controller) выступают классы, осуществляющие поддержку REST интерфейса. Поддержка MVC паттерна предоставляется фреймворком Spring MVC [34], а сам сервер разрабатывался с использованием фреймворка Spring Boot [35].

REST интерфейс

Модуль сервера оценки предоставляет ряд различных контроллеров, которые позволяют взаимодействовать с данным модулем посредством протокола HTTP. Каждому контроллеру ставится HTTP метод посылаемого обрабатываемого запроса, а также URL адрес, по которому будет осуществлен запрос. Основные контроллеры перечислены в табл. 2:

Таблица 2 Основные REST контроллеры сервера оценки

URL адрес

HTTP метод запроса

Параметры

Описание

1

/api

GET

Нет.

Контроллер, возвращающий информацию о всех курсах, зарегистрированных в системе, а также о всех заданиях, проходящих на данных курсах.

2

/api/{courseShortName}

GET

Параметр пути - courseShortName.

Контроллер, возвращающий информацию о курсе, зарегистрированным с заданным коротким именем в системе, а также о всех заданиях, проходящих на данном курсе.

3

/api/assignments/getAssignmentById

GET

assignmentId - уникальный идентификатор задания.

Контроллер, возвращающий информацию о задании, зарегистрированным с заданным уникальным идентификатором в системе.

4

/api/login

POST

username - имя пользователя, password - пароль пользователя.

Контроллер, осуществляющий вход пользователя в систему.

5

/api/logout

POST

Нет.

Контроллер, осуществляющий выход из системы.

6

/api/assignments/getAllResultsById

GET

assignmentId - уникальный идентификатор задания.

Контроллер, возвращающий информацию о результатах всех попыток определенного задания, зарегистрированного с заданным уникальным идентификатором.

7

/api/assignments/getAttemptsById

GET

assignmentId - уникальный идентификатор задания.

Контроллер, возвращающий информацию о результатах всех попыток, сделанных студентом, осуществляющим запрос на определенном задании, зарегистрированным с заданным уникальным идентификатором.

8

/api/assignments/triggerAssignmentById

POST

assignmentId - уникальный идентификатор задания, inputFile - загружаемый файл.

Контроллер, позволяющий загрузить файл в программу и зарегистрировать попытку сдачи задания студентом, сделавшим данный запрос.

 
< Пред   СОДЕРЖАНИЕ   Загрузить   След >