Package studentrepoloader
package studentrepoloader
Root package of the StudentRepoLoader application.
This package serves as the entry point and high-level namespace for all components of the ViLLe CSV-based student submission processing tool. It contains subpackages for:
cli
– CLI entry points and test driver classes.git
– Repository folder preparation and (in the future) cloning logic.model
– Data models for representing submission data in different formats.validation
– Static sanitization and transformation logic, including exceptions for malformed input.
The application is designed with a layered and modular architecture:
- The
model
layer is format-agnostic and defines interfaces for submission objects (VilleSubmission
,GitLabSubmission
). - The
mapper
subpackage transforms parsed CSV rows into implementation objects via reflection. - The
impl
subpackage contains concrete implementations that enforce validation and structure. - The
util
subpackage allows querying and filtering submission lists with a fluent interface.
The git
package uses the model interfaces to create consistent directory structures for bulk cloning.
The validation
package ensures malformed GitLab links are cleaned before any clone operation begins.
At the top level, this package establishes the namespace studentrepoloader
under which all tooling
related to ViLLe CSV-based submission processing is organized.