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.