Пример #1
0
  public ArrayList<Course> getCourseList(String COURSE_LIST) throws Exception {
    ArrayList<Course> courses = new ArrayList<Course>();
    UniversityFacadeREST universityREST = new UniversityFacadeREST();

    HttpClient httpClient = new DefaultHttpClient();

    HttpGet httpGet = new HttpGet(COURSE_LIST);

    HttpResponse httpResponse = httpClient.execute(httpGet);
    httpResponse.setEntity(httpResponse.getEntity());
    HttpEntity httpEntity = httpResponse.getEntity();
    if (httpEntity != null) {

      InputStream inputStream = httpEntity.getContent();
      String jsonFile = convertStreamToString(inputStream);
      JSONObject json = new JSONObject(jsonFile);

      // Courses are called topics for Coursera
      JSONObject courselist = json.getJSONObject("topics");
      Iterator<?> keys = courselist.keys();

      // Iterate through each key
      while (keys.hasNext()) {
        String key = (String) keys.next();
        if (courselist.get(key) instanceof JSONObject) {
          JSONObject coursecode = (JSONObject) courselist.get(key);

          Course course = new Course();
          // To ensure the id is the same as Coursera,
          // so that it can be linked later on to the
          // university
          course.setId(10 + Integer.parseInt(key));
          course.setName(coursecode.getString("name"));
          course.setCode(coursecode.getString("short_name"));
          course.setIconUrl(coursecode.getString("large_icon"));
          course.setLanguage(coursecode.getString("language"));

          JSONArray universityIdList = coursecode.getJSONArray("unis");

          University newuni = new University(10 + universityIdList.getInt(0));

          course.setIdUniversity(newuni);

          courses.add(course);
        }
      }
    }

    return courses;
  }