package com.google.sps.data;

import java.util.List;

public class GenerateScheduleRequest {
  List<Course> courses;
  InputCriterion criterion;
  BasicInfo basicInfo;

  public GenerateScheduleRequest(){};
  
  public List<Course> getCourses() {
    return this.courses;
  }

  public List<TimeRange> getTimePreferences() {
    return this.criterion.timePreferences;
  }

  public String getPreferredSubject() {
    return this.criterion.preferredSubject;
  }

  public Invariants getCredits() {
    return this.basicInfo.credits;
  }

  public String getTermStartDate() {
    return this.basicInfo.termDates.startDate;
  }

  public String getTermEndDate() {
    return this.basicInfo.termDates.endDate;
  }
}

class InputCriterion {
  List<TimeRange> timePreferences;
  String preferredSubject;
}

class BasicInfo {
  Invariants credits;
  TermDates termDates;
}

class TermDates {
  String startDate;
  String endDate;
}

@@ -45,16 +45,42 @@
 il.List;
+%0Aimport java.util.HashMap;
 %0A%0Apublic
@@ -477,24 +477,123 @@
 bject;%0A  %7D%0A%0A
+  public HashMap%3CString, Integer%3E getCourseScores() %7B%0A    return this.criterion.courseScores;%0A  %7D%0A%0A
   public Inv
@@ -889,16 +889,16 @@
 rences;%0A
-
   String
@@ -916,16 +916,57 @@
 ubject;%0A
+  HashMap%3CString, Integer%3E courseScores;%0A
 %7D%0A%0Aclass

Add courseScores hashmap for course priority ranking