Index
All Classes and Interfaces|All Packages
A
- addRepoToCloningQueue(S, Path) - Method in class studentrepoloader.git.SubmissionCloner
-
Adds a single submission to the clone queue in a thread-safe manner.
- APPENDED_DOT_GIT - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- array() - Method in record class studentrepoloader.cli.VilleTestObject
-
Returns the value of the
array
record component.
C
- call() - Method in class studentrepoloader.cli.Launcher
-
Launches the CLI, validates inputs, and arranges the course folder and input file.
- cliArgumentTester - Class in studentrepoloader.cli
- cliArgumentTester() - Constructor for class studentrepoloader.cli.cliArgumentTester
- cloneAll() - Method in class studentrepoloader.git.SubmissionCloner
-
Entry point for the concurrent cloning process.
- compareTo(VilleSubmissionFields) - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Enables sorting of submissions using
getID()
as the primary sort key. - CONVERTED_SSH - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- createFolder(Path) - Static method in class studentrepoloader.filesystem.DirectoryUtils
-
Ensures the given path exists as a directory.
D
- demopalautus - Record Class in studentrepoloader.cli
- demopalautus(String[], ViLLeCsvFile) - Constructor for record class studentrepoloader.cli.demopalautus
-
Creates an instance of a
demopalautus
record class. - DirectoryUtils - Class in studentrepoloader.filesystem
-
Utility methods for managing directory and log file creation.
- DirectoryUtils() - Constructor for class studentrepoloader.filesystem.DirectoryUtils
E
- ensureTemplateStructure() - Static method in class studentrepoloader.filesystem.TemplateExtractor
-
Ensures that the base `ViLLe courses/` folder and required template substructure exist.
- equals(Object) - Method in record class studentrepoloader.cli.demopalautus
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class studentrepoloader.cli.VilleTestObject
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
- ERROR_NOT_A_CLONE_LINK - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- expectedHostPrefix() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns the expected prefix for a valid GitLab repository URL.
- extractColumn(Function<T, R>) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Terminal operation that projects the current filtered list into a single column.
F
- filter(Predicate<T>) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Applies an arbitrary predicate to the current submission list.
- filterAfterDate(String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters submissions after the given ViLLe deadline date (yyyy-MM-dd).
- filterBeforeDate(String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters submissions on or before the given ViLLe deadline date.
- filterFieldContaining(Function<T, String>, String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters by whether a specific field contains a given substring.
- filterIdAtOrAfter(String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters submissions where getID() is greater than or equal to the lower bound.
- filterIdAtOrBefore(String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters submissions where getID() is less than or equal to the upper bound.
- filterIdBetween(String, String) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Filters submissions whose getID() falls within a specified inclusive range.
- filterNot(Predicate<T>) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Applies a negated filter condition to exclude matching entries.
- FlatSubmissionPathPlanner<S> - Class in studentrepoloader.filesystem
-
Strategy that puts all submissions into a single flat directory directly under the root.
- FlatSubmissionPathPlanner() - Constructor for class studentrepoloader.filesystem.FlatSubmissionPathPlanner
- from(List<T>) - Static method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Static factory method to begin a fluent query.
G
- getAiDisclosure() - Method in record class studentrepoloader.cli.demopalautus
- getAiDisclosure() - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
-
Returns the AI usage disclosure text from column 7.
- getAiDisclosure() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns the student's disclosure regarding use of AI tools (e.g., ChatGPT, GitHub Copilot).
- getDelimiter() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getEntries() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getFirstName() - Method in record class studentrepoloader.cli.demopalautus
- getFirstName() - Method in record class studentrepoloader.cli.VilleTestObject
- getFirstName() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the student's first name from column 1.
- getFirstName() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the student's given name.
- getFolderName() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Constructs a filesystem-safe folder name for storing this student's submission.
- getGitLabLink() - Method in record class studentrepoloader.cli.demopalautus
- getGitLabLink() - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
-
Returns the raw GitLab link field from column 6 without any processing.
- getGitLabLink() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns the raw GitLab link field as entered by the student, without any processing.
- getGroupWork() - Method in record class studentrepoloader.cli.demopalautus
- getGroupWork() - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
-
Returns the student's group work description from column 8.
- getGroupWork() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns the student's response to the group work question.
- getHeader() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getHeaderItems() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getID() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Extracts a simplified ID from the user's email by removing dots and the domain part.
- getLastName() - Method in record class studentrepoloader.cli.demopalautus
- getLastName() - Method in record class studentrepoloader.cli.VilleTestObject
- getLastName() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the student's last name from column 2.
- getLastName() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the student's surname.
- getParentFolderName() - Method in record class studentrepoloader.cli.demopalautus
-
Returns a timestamp-based folder name to group this submission.
- getParentFolderName() - Method in record class studentrepoloader.cli.VilleTestObject
-
Returns a timestamp-based folder name to group this submission.
- getParentFolderName() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the base folder name used to group this submission under an outer task-level directory.
- getParentFolderName() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the name of the parent folder under which this submission and other similar submissions should be grouped on disk.
- getRepoUrl() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns a parsed and sanitized GitLab repository link as a value object, along with a complete record of cleaning steps that were applied.
- getRows() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getScore() - Method in record class studentrepoloader.cli.demopalautus
- getScore() - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
-
Returns the numeric score from column 5.
- getScore() - Method in interface studentrepoloader.model.villecsv.mapper.GitLabSubmissionFields
-
Returns the score assigned to this submission.
- getStudentId() - Method in record class studentrepoloader.cli.demopalautus
- getStudentId() - Method in record class studentrepoloader.cli.VilleTestObject
- getStudentId() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the student ID from column 4.
- getStudentId() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the student's official identifier, such as a student number or other ID code.
- getSubmissionList() - Method in class studentrepoloader.model.villecsv.mapper.SubmissionMapper
-
Instantiates and returns a list of submissions from the CSV file.
- getTime() - Method in record class studentrepoloader.cli.demopalautus
- getTime() - Method in record class studentrepoloader.cli.VilleTestObject
- getTime() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the submission timestamp from column 3.
- getTime() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the timestamp of the submission as a raw string.
- getUser() - Method in record class studentrepoloader.cli.demopalautus
- getUser() - Method in record class studentrepoloader.cli.VilleTestObject
- getUser() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
-
Returns the user identifier (typically an email address) from column 0.
- getUser() - Method in interface studentrepoloader.model.villecsv.mapper.VilleSubmissionFields
-
Returns the full user identifier, typically an email address.
- getVilleCsvFile() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
- getViLLeCsvFile() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
- getVilleCsvRow() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
- GitLabRepoUrl - Class in studentrepoloader.model
-
Value object representing a cleaned and validated GitLab repository URL, with full traceability of all applied sanitation steps.
- GitLabRepoUrl.CleaningStep - Enum Class in studentrepoloader.model
-
Enum describing every possible cleaning transformation that may be applied during sanitation.
- GitLabSubmission - Class in studentrepoloader.model.villecsv.impl
-
Default implementation of
GitLabSubmissionFields
, extending the base fields defined inVilleSubmission
. - GitLabSubmission(String[], ViLLeCsvFile) - Constructor for class studentrepoloader.model.villecsv.impl.GitLabSubmission
-
Constructs a new
DefaultGitLabSubmission
from a full row of CSV fields, along with its parentViLLeCsvFile
for contextual reference. - GitLabSubmissionFields - Interface in studentrepoloader.model.villecsv.mapper
-
An extension of
VilleSubmissionFields
representing a submission made via a GitLab link box in ViLLe.
H
- hashCode() - Method in record class studentrepoloader.cli.demopalautus
-
Returns a hash code value for this object.
- hashCode() - Method in record class studentrepoloader.cli.VilleTestObject
-
Returns a hash code value for this object.
- hashCode() - Method in class studentrepoloader.model.villecsv.impl.GitLabSubmission
I
- isCloned(Path) - Static method in class studentrepoloader.filesystem.DirectoryUtils
-
Checks whether the target path contains a cloned Git repository.
L
- Launcher - Class in studentrepoloader.cli
-
Command-line entry point for initializing a course folder under ViLLe RepoLoader.
- Launcher() - Constructor for class studentrepoloader.cli.Launcher
M
- main(String[]) - Static method in class studentrepoloader.cli.cliArgumentTester
- main(String[]) - Static method in class studentrepoloader.cli.Launcher
-
CLI entry point.
- MyOwnGitlabSubmission - Class in studentrepoloader.cli
- MyOwnGitlabSubmission(String[], ViLLeCsvFile) - Constructor for class studentrepoloader.cli.MyOwnGitlabSubmission
- MyOwnVilleGitLabSubmission - Class in studentrepoloader.cli
- MyOwnVilleGitLabSubmission(String[], ViLLeCsvFile) - Constructor for class studentrepoloader.cli.MyOwnVilleGitLabSubmission
P
- parse(String, String) - Static method in class studentrepoloader.model.GitLabRepoUrl
-
Parses and sanitizes a raw input string using the expected GitLab prefix.
- planPaths(List<S>, Path) - Method in class studentrepoloader.filesystem.FlatSubmissionPathPlanner
- planPaths(List<S>, Path) - Method in class studentrepoloader.filesystem.RangeSubmissionPathPlanner
- planPaths(List<S>, Path) - Method in interface studentrepoloader.filesystem.SubmissionPathPlanner
-
Plans directory paths for the given submissions under the specified root directory.
R
- RangeSubmissionPathPlanner<S> - Class in studentrepoloader.filesystem
-
Strategy that groups submissions under a directory named by the submission file and ID range.
- RangeSubmissionPathPlanner() - Constructor for class studentrepoloader.filesystem.RangeSubmissionPathPlanner
- REMOVED_EXTRA_TEXT_AROUND_LINK - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- REMOVED_FRAGMENT - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- REMOVED_TRAILING_SLASH - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- resetLogFile(Path) - Static method in class studentrepoloader.filesystem.DirectoryUtils
-
Initializes a global log file by deleting any existing instance and creating an empty replacement.
- Responsibilities: - Search tag in class studentrepoloader.model.villecsv.ViLLeCsvUtils
- Section
- row() - Method in record class studentrepoloader.cli.demopalautus
-
Returns the value of the
row
record component.
S
- sortBy(Function<T, String>) - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Sorts submissions by a field (e.g., ID or name).
- source() - Method in record class studentrepoloader.cli.demopalautus
-
Returns the value of the
source
record component. - steps() - Method in class studentrepoloader.model.GitLabRepoUrl
-
Returns an immutable list of cleaning operations that were applied.
- STRIPPED_UI_SUFFIX - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
- studentrepoloader - package studentrepoloader
-
Root package of the StudentRepoLoader application.
- studentrepoloader.cli - package studentrepoloader.cli
-
Provides command-line interface (CLI) entry points and usage examples for the StudentRepoLoader tool.
- studentrepoloader.filesystem - package studentrepoloader.filesystem
-
Provides infrastructure for organizing and preparing local directories for Git-based student submissions.
- studentrepoloader.git - package studentrepoloader.git
-
Contains logic for concurrent cloning of GitLab repositories linked to student submissions.
- studentrepoloader.model - package studentrepoloader.model
-
Top-level data model package for submission representations and data source formats.
- studentrepoloader.model.villecsv - package studentrepoloader.model.villecsv
-
Contains file parsers and data representations for ViLLe CSV exports.
- studentrepoloader.model.villecsv.impl - package studentrepoloader.model.villecsv.impl
-
Contains default implementations of the
VilleSubmission
andGitLabSubmission
interfaces. - studentrepoloader.model.villecsv.mapper - package studentrepoloader.model.villecsv.mapper
-
Defines the interface and mapping logic for structured ViLLe submission objects.
- studentrepoloader.model.villecsv.util - package studentrepoloader.model.villecsv.util
-
Utility classes for filtering, transforming, and projecting lists of ViLLe submission objects.
- SubmissionCloner<S> - Class in studentrepoloader.git
-
Concurrent Git repository cloner for GitLab-based student submissions.
- SubmissionCloner(Map<S, Path>) - Constructor for class studentrepoloader.git.SubmissionCloner
- SubmissionCloner(Map<S, Path>, int) - Constructor for class studentrepoloader.git.SubmissionCloner
- SubmissionMapper<T> - Class in studentrepoloader.model.villecsv.mapper
-
SubmissionMapper transforms rows from a parsed ViLLe CSV file into typed Java objects that implement the
VilleSubmissionFields
interface or its subinterfaces. - SubmissionMapper(ViLLeCsvFile, Class<? extends T>) - Constructor for class studentrepoloader.model.villecsv.mapper.SubmissionMapper
-
Constructs a new SubmissionMapper for a specific CSV file and target record class.
- SubmissionPathPlanner<S> - Interface in studentrepoloader.filesystem
-
Strategy interface for planning directory paths for a list of submissions.
- SubmissionQuery<T> - Class in studentrepoloader.model.villecsv.util
-
Fluent wrapper for filtering and transforming lists of
VilleSubmissionFields
objects. - SubmissionQuery(List<T>) - Constructor for class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Constructs a new query object from a given list.
- summary() - Method in class studentrepoloader.model.villecsv.ViLLeCsvFile
T
- TemplateExtractor - Class in studentrepoloader.filesystem
-
Extracts the static template directory structure used by ViLLe RepoLoader.
- TemplateExtractor() - Constructor for class studentrepoloader.filesystem.TemplateExtractor
- toList() - Method in class studentrepoloader.model.villecsv.util.SubmissionQuery
-
Returns the current list of filtered submissions.
- toString() - Method in record class studentrepoloader.cli.demopalautus
-
Returns a string representation of this record class.
- toString() - Method in record class studentrepoloader.cli.VilleTestObject
-
Returns a string representation of this record class.
- toString() - Method in class studentrepoloader.model.GitLabRepoUrl
- toString() - Method in class studentrepoloader.model.villecsv.impl.VilleSubmission
- TRIMMED - Enum constant in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
U
- url() - Method in class studentrepoloader.model.GitLabRepoUrl
-
Returns the sanitized URL string, typically HTTPS and ending with
.git
.
V
- valueOf(String) - Static method in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class studentrepoloader.model.GitLabRepoUrl.CleaningStep
-
Returns an array containing the constants of this enum class, in the order they are declared.
- ViLLeCsvFile - Class in studentrepoloader.model.villecsv
-
Container for parsed contents of a ViLLe-exported CSV file.
- ViLLeCsvFile(File) - Constructor for class studentrepoloader.model.villecsv.ViLLeCsvFile
-
Parses a ViLLe-exported CSV file using the provided parser.
- villeCsvRow - Variable in class studentrepoloader.model.villecsv.impl.VilleSubmission
- ViLLeCsvUtils - Class in studentrepoloader.model.villecsv
-
Static utility class for parsing and validating CSV files exported from the ViLLe learning platform.
- VilleSubmission - Class in studentrepoloader.model.villecsv.impl
-
Default implementation of
VilleSubmissionFields
, based on the first five columns of a ViLLe CSV row. - VilleSubmissionFields - Interface in studentrepoloader.model.villecsv.mapper
-
Base interface for all ViLLe submission types.
- VilleTestObject - Record Class in studentrepoloader.cli
- VilleTestObject(String[]) - Constructor for record class studentrepoloader.cli.VilleTestObject
-
Creates an instance of a
VilleTestObject
record class.
W
- writeLog(String, Path, boolean) - Static method in class studentrepoloader.filesystem.DirectoryUtils
-
Writes a single line of text to the specified log file.
All Classes and Interfaces|All Packages