blob: 95e5851c00a254e0fe59fded9454fb93694a540d (
plain)
- // SPDX-FileCopyrightText: 2025 Jonas Smedegaard <dr@jones.dk>
- // SPDX-License-Identifier: GPL-3.0-or-later
- package dk.biks.bachelorizer;
- import java.util.ArrayList;
- import java.util.List;
- /// Bachelorizer - reference storage model
- abstract class Storage {
- /// default constructor
- // (declared explicitly only to silence javadoc)
- Storage() { }
- /// initialization as needed
- abstract void initialize();
- /// add student
- ///
- /// @param name Name of student
- public abstract void addStudent(String name);
- /// get student name
- ///
- /// @return name of student
- public abstract String getStudentName();
- /// resolve activity index from name
- ///
- /// @param name activity name
- /// @return index of activity as integer
- abstract int getActivityIndeks(String name);
- /// insert activity into participation
- ///
- /// @param activityIndex index of activity
- abstract void addParticipation(int activityIndex);
- /// list currently participating activities
- ///
- /// @param program programme name
- /// @return names of participating activities
- abstract ArrayList<String> getParticipation(String program);
- /// purge participation choices
- abstract void clearParticipation();
- /// list activities within a program
- ///
- /// @param program programme name
- /// @return names of contained activities
- abstract ArrayList<String> selectProgram(String program);
- /// sum of ECTS points under the given category
- ///
- /// @param program programme name
- /// @return ECTS points as String
- abstract String getSumEcts(String program);
- /// list of available subject modules
- ///
- /// @return names of all subject modules as list of strings
- abstract List<String> getAllSubjects();
- /// list of available activities
- ///
- /// @return names of all activities as list of strings
- abstract ArrayList<String> getAllActivities();
- }
|