From 6adc96c9da4f60f48ce77ecafed30bdff0213164 Mon Sep 17 00:00:00 2001 From: Ekaterina Tuzova Date: Tue, 27 Jan 2015 12:38:59 +0300 Subject: [PATCH] Created test course on stepic --- .../learning/stepic/StudyStepicConnector.java | 48 +++++++------------ 1 file changed, 18 insertions(+), 30 deletions(-) diff --git a/python/educational/interactive-learning/src/com/jetbrains/edu/learning/stepic/StudyStepicConnector.java b/python/educational/interactive-learning/src/com/jetbrains/edu/learning/stepic/StudyStepicConnector.java index a6f07eea37ae..2d00af9f911d 100644 --- a/python/educational/interactive-learning/src/com/jetbrains/edu/learning/stepic/StudyStepicConnector.java +++ b/python/educational/interactive-learning/src/com/jetbrains/edu/learning/stepic/StudyStepicConnector.java @@ -18,14 +18,27 @@ import java.util.List; public class StudyStepicConnector { private static final String stepicApiUrl = "https://stepic.org/api/"; private static final Logger LOG = Logger.getInstance(StudyStepicConnector.class.getName()); - public static CourseInfo ourTestCourseInfo; // TODO: to be removed private StudyStepicConnector() {} + @NotNull public static List getCourses() { - ourTestCourseInfo = new CourseInfo("name", "author", "description"); - return Collections.singletonList(ourTestCourseInfo); // TODO: uncomment proper implementation - /*try { + try { + return HttpRequests.request(stepicApiUrl + "courses/93").connect(new HttpRequests.RequestProcessor>() { + + @Override + public List process(@NotNull HttpRequests.Request request) throws IOException { + final BufferedReader reader = request.getReader(); + Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create(); + return gson.fromJson(reader, CoursesContainer.class).courses; + } + }); + } + catch (IOException e) { + LOG.error("IOException " + e.getMessage()); + } + return Collections.emptyList(); + /*try { // TODO: uncomment return HttpRequests.request(stepicApiUrl + "courses").connect(new HttpRequests.RequestProcessor>() { @Override @@ -50,16 +63,6 @@ public class StudyStepicConnector { course.lessons = new ArrayList(); course.setLanguage("Python"); // TODO: get from stepic - if (info.equals(ourTestCourseInfo)) { // TODO: to be removed - try { - course.lessons.addAll(getLessons(0)); - } - catch (IOException e) { - LOG.error("IOException " + e.getMessage()); - } - return course; - } - try { for (Integer section : info.sections) { course.lessons.addAll(getLessons(section)); @@ -73,21 +76,7 @@ public class StudyStepicConnector { } public static List getLessons(int sectionId) throws IOException { - final List lessons; - if (sectionId == 0) { // TODO: to be removed - lessons = - HttpRequests.request(stepicApiUrl + "lessons/9205").connect(new HttpRequests.RequestProcessor>() { - - @Override - public List process(@NotNull HttpRequests.Request request) throws IOException { - final BufferedReader reader = request.getReader(); - Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create(); - return gson.fromJson(reader, Section.class).lessons; - } - }); - } - else { - lessons = + final List lessons = HttpRequests.request(stepicApiUrl + "sections/" + String.valueOf(sectionId)) .connect(new HttpRequests.RequestProcessor>() { @@ -98,7 +87,6 @@ public class StudyStepicConnector { return gson.fromJson(reader, Section.class).lessons; } }); - } for (Lesson lesson : lessons) { lesson.taskList = new ArrayList(); for (Integer s : lesson.steps) {