public List <AvailableCourse> GetAvailableCourses() { if (_session_token == "") { return(null); } var req = new RestRequest(Method.GET) { Resource = "api/courses/available/" + _session_token }; var res = _client.Execute <FullAvailableCourseResponse>(req); FullAvailableCourseResponse courses = res.Data; if (courses == null) { ErrorPrinter.BadData("Parsing Available courses failed"); return(null); } if (courses.errorCode != null) { ErrorPrinter.Code(courses); return(null); } return(courses.ToCourses()); }
public List <AvailableCourse> SearchForCourses(string term, string prefix, string number, string ilastname, int startTime, int endTime, int slots, HttpRCB <FullAvailableCourseResponse> callback) { if (_session_token == "") { return(null); } var req = new RestRequest(Method.GET) { Resource = "api/courses/search/" + _session_token }; if (term != "") { req.AddParameter("term", term); } if (prefix != "") { req.AddParameter("prefix", prefix); } if (number != "") { req.AddParameter("number", number); } if (ilastname != "") { req.AddParameter("instructor", ilastname); } if (startTime != -1 && endTime != -1) { if (startTime < endTime) { req.AddParameter("startTime", startTime); req.AddParameter("endTime", endTime); } } if (slots >= 0) { req.AddParameter("slotsAvailable", slots); } var res = _client.Execute <FullAvailableCourseResponse>(req); FullAvailableCourseResponse courses = res.Data; if (courses == null) { ErrorPrinter.BadData("Parsing searched courses failed"); return(null); } if (callback(courses)) { return(courses?.ToCourses()); } else { return(null); } }