org.dropProject.dao

package org.dropProject.dao

Classes

Name Description
data class Assignee: Any

Represents an Assignee of an Assignment. Some assignments are private in the sense that they can only be accessed by students that were given a certain permission. This "role" of Assignee represents that permission.

enum class Language: Enum<Language>

Enum representing the programming languages that Drop Project supports.

enum class TestVisibility: Enum<TestVisibility>

Enum representing the types of visibility that can be applied to the results of the hidden unit tests.

  • HIDE_EVERYTHING - students will receive no information about hidden tests;
  • SHOW_OK_NOK - students will be informed about if they pass all the tests or if there is at least one failure;
  • SHOW_PROGRESS - students will know how many tests exist and how many they are passing (e.g. nr passed/nr total).
enum class LeaderboardType: Enum<LeaderboardType>

Enum representing the types of Leaderboard (for example, based on Number of Passed Tests).

data class Assignment: Any

Represents an Assignment, which is a problem to be solved by a student or group of students.

data class AssignmentACL: Any

Represents the association between an Assignment and a user that can access it.

data class AssignmentReport: Any

Represents a report of information that was generated during an Assignment's validation. This information will be listed on the Assignments "Validation Report" page.

data class AssignmentTag: Any

Represents a "tag" used to categorize Assignments. It is mostly used for filtering purposes. It might take any value (e.g. the name of the course, the year, the type of evaluation, etc.).

data class AssignmentTestMethod: Any

Represents an Assignment's JUnit test method/function.

data class Author: Any

Represents the author of a submission (a student or a teacher).

data class BuildReport: Any

Represents an Assignment's "Build Report".

data class GitSubmission: Any

Represents a GitSubmission which is a Submission performed by connecting to a GitHub repository and pulling it's code.

data class JUnitReport: Any

Represents a persisted JUnitReport.

data class JacocoReport: Any

Represents a persisted Jacoco report. The Jacoco report contains the result of calculating the code coverage of a Submission.

data class ProjectGroup: Any

Represents a set of Authors (for example, students) that interact with Drop Project as a group.

enum class SubmissionStatus: Enum<SubmissionStatus>

Enum represening the possible statuses that a Submission can be in.

The submission starts in the "Submitted" status, and then moves to another status as it is validated and tested.

Some of the statuses represent problematic situations (e.g. "TO", "Too much output").

data class Submission: Any

Represents a Submission, which is a single interaction of the student (or group) with an Assignment.

enum class Indicator: Enum<Indicator>

Enum representing the multiple evaluation criteria that a Submission can be subject to. Some of the criteria are mandatory (e.g. Compilation) while others are optional (e.g. Teacher Hidden Unit Tests).

data class SubmissionReport: Any

Represents a SubmissionReport, which is the status of a Submission for a certain indicator (for example, Compilation). Each Submission will have multiple such indicators.

Fields

Name Description
val formatter: DateTimeFormatter?