Exemplo n.º 1
0
def get_course_data(request):
    """
    Get the course data for a given course.
    """

    if request.method != "GET":
        return util._error_response("Request type must be GET",
                                    _INTERFACE_VERSION)

    course = request.GET.get('course')

    # Throw an error if user does not specify a course.
    if course is None:
        return util._error_response("You must specify a course.",
                                    _INTERFACE_VERSION)

    # Generate a data filename for the course.
    filename = get_course_data_filename(course)

    # Get the data file from S3.  There is a periodic task that puts the files here.
    s3 = S3Connection(settings.AWS_ACCESS_KEY_ID,
                      settings.AWS_SECRET_ACCESS_KEY,
                      is_secure=False)
    file_url = s3.generate_url(settings.S3_FILE_TIMEOUT,
                               'GET',
                               bucket=settings.S3_BUCKETNAME.lower(),
                               key=filename)

    # Return a temporary url.
    return util._success_response({'file_url': file_url}, _INTERFACE_VERSION)
Exemplo n.º 2
0
    def get_course_data_file(self, course):
        """
        Given a course, generate a data file and return the filename.
        course - A string course name.
        returns - A string filename.
        """
        regenerate_course_data_in_csv_format(course)
        filename = get_course_data_filename(course)

        data_filename = os.path.abspath(os.path.join(settings.COURSE_DATA_PATH, filename))
        return data_filename
Exemplo n.º 3
0
def get_course_data(request):
    """
    Get the course data for a given course.
    """

    if request.method != "GET":
        return util._error_response("Request type must be GET", _INTERFACE_VERSION)

    course = request.GET.get('course')

    # Throw an error if user does not specify a course.
    if course is None:
        return util._error_response("You must specify a course.", _INTERFACE_VERSION)

    # Generate a data filename for the course.
    filename = get_course_data_filename(course)

    # Get the data file from S3.  There is a periodic task that puts the files here.
    s3 = S3Connection(settings.AWS_ACCESS_KEY_ID, settings.AWS_SECRET_ACCESS_KEY, is_secure=False)
    file_url = s3.generate_url(settings.S3_FILE_TIMEOUT, 'GET', bucket=settings.S3_BUCKETNAME.lower(), key=filename)

    # Return a temporary url.
    return util._success_response({'file_url': file_url}, _INTERFACE_VERSION)