Package studentrepoloader.model.villecsv.impl
VilleSubmission
and GitLabSubmission
interfaces.
This package provides concrete classes that interpret specific ViLLe CSV field arrangements. Because field positions and names vary per assignment, each implementation hardcodes its own understanding of which CSV index maps to which semantic field.
Implementations in this package are intended to be used with SubmissionMapper
,
which constructs instances using a required constructor: (String[] row, ViLLeCsvFile source)
.
Key classes:
DefaultVilleSubmission
– Provides a baseline implementation ofVilleSubmission
.DefaultGitLabSubmission
– Adds support for GitLab links, AI disclosures, and group work info. Delegates Git link cleanup toGitLabRepoUrl
.MyOwnVilleDefaultSubmission
– An example customization based on the default implementation.
Implementors are expected to align field indexes with their actual ViLLe CSV structure, as there is no reliable schema enforcement at the parser level.
These implementations may apply additional validation logic (e.g., link cleanup, folder name formatting) that is tightly coupled to the Git workflow.
-
ClassesClassDescriptionDefault implementation of
GitLabSubmissionFields
, extending the base fields defined inVilleSubmission
.Default implementation ofVilleSubmissionFields
, based on the first five columns of a ViLLe CSV row.