Search in sources :

Example 16 with QuizSubmission

use of com.instructure.canvasapi2.models.QuizSubmission in project instructure-android by instructure.

the class QuizManager method getAllQuizSubmissions.

public static void getAllQuizSubmissions(final CanvasContext canvasContext, final long quizId, final boolean forceNetwork, final StatusCallback<List<QuizSubmission>> callback) {
    if (isTesting() || mTesting) {
        QuizManager_Test.getAllQuizSubmissions(callback);
    } else {
        final RestBuilder adapter = new RestBuilder(callback);
        final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
        final ExhaustiveCallback<QuizSubmissionResponse, QuizSubmission> paginatedCallback = new ExhaustiveCallback<QuizSubmissionResponse, QuizSubmission>(callback) {

            @Override
            public void getNextPage(@NotNull StatusCallback<QuizSubmissionResponse> callback, @NotNull String nextUrl, boolean isCached) {
                QuizAPI.getQuizSubmissions(canvasContext, quizId, adapter, callback, params);
            }

            @NotNull
            @Override
            public List<QuizSubmission> extractItems(QuizSubmissionResponse response) {
                return response.getQuizSubmissions();
            }
        };
        adapter.setStatusCallback(paginatedCallback);
        QuizAPI.getQuizSubmissions(canvasContext, quizId, adapter, paginatedCallback, params);
    }
}
Also used : QuizSubmission(com.instructure.canvasapi2.models.QuizSubmission) RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) StatusCallback(com.instructure.canvasapi2.StatusCallback) NotNull(org.jetbrains.annotations.NotNull) ExhaustiveCallback(com.instructure.canvasapi2.utils.ExhaustiveCallback) QuizSubmissionResponse(com.instructure.canvasapi2.models.QuizSubmissionResponse)

Example 17 with QuizSubmission

use of com.instructure.canvasapi2.models.QuizSubmission in project instructure-android by instructure.

the class QuizManager method postQuizSubmit.

public static void postQuizSubmit(CanvasContext canvasContext, QuizSubmission quizSubmission, boolean forceNetwork, final StatusCallback<QuizSubmissionResponse> callback) {
    final RestBuilder adapter = new RestBuilder(callback);
    final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
    QuizAPI.postQuizSubmit(canvasContext, quizSubmission, adapter, params, callback);
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder)

Example 18 with QuizSubmission

use of com.instructure.canvasapi2.models.QuizSubmission in project instructure-android by instructure.

the class QuizManager method postQuizQuestionEssay.

public static void postQuizQuestionEssay(QuizSubmission quizSubmission, String answer, long questionId, boolean forceNetwork, @NonNull StatusCallback<QuizSubmissionQuestionResponse> callback) {
    final RestBuilder adapter = new RestBuilder(callback);
    final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
    QuizAPI.postQuizQuestionEssay(quizSubmission, questionId, answer, adapter, params, callback);
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder)

Example 19 with QuizSubmission

use of com.instructure.canvasapi2.models.QuizSubmission in project instructure-android by instructure.

the class QuizManager method submitQuiz.

public static void submitQuiz(CanvasContext canvasContext, QuizSubmission quizSubmission, final boolean forceNetwork, final StatusCallback<QuizSubmissionResponse> callback) {
    final RestBuilder adapter = new RestBuilder(callback);
    final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
    QuizAPI.submitQuiz(canvasContext, quizSubmission, adapter, params, callback);
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder)

Example 20 with QuizSubmission

use of com.instructure.canvasapi2.models.QuizSubmission in project instructure-android by instructure.

the class QuizManager method postQuizQuestionMultiChoice.

public static void postQuizQuestionMultiChoice(QuizSubmission quizSubmission, long answer, long questionId, boolean forceNetwork, @NonNull StatusCallback<QuizSubmissionQuestionResponse> callback) {
    final RestBuilder adapter = new RestBuilder(callback);
    final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
    QuizAPI.postQuizQuestionMultiChoice(quizSubmission.getId(), quizSubmission.getAttempt(), questionId, answer, quizSubmission.getValidationToken(), adapter, params, callback);
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder)

Aggregations

RestBuilder (com.instructure.canvasapi2.builders.RestBuilder)11 RestParams (com.instructure.canvasapi2.builders.RestParams)11 QuizSubmissionResponse (com.instructure.canvasapi2.models.QuizSubmissionResponse)9 StatusCallback (com.instructure.canvasapi2.StatusCallback)8 LinkHeaders (com.instructure.canvasapi2.utils.LinkHeaders)8 QuizSubmissionQuestionResponse (com.instructure.canvasapi2.models.QuizSubmissionQuestionResponse)7 QuizSubmission (com.instructure.canvasapi2.models.QuizSubmission)5 ApiType (com.instructure.canvasapi2.utils.ApiType)5 ArrayList (java.util.ArrayList)5 NonNull (android.support.annotation.NonNull)4 Response (retrofit2.Response)4 QuizSubmissionQuestion (com.instructure.canvasapi2.models.QuizSubmissionQuestion)3 Response (okhttp3.Response)3 LinkedTreeMap (com.google.gson.internal.LinkedTreeMap)2 QuizSubmissionTime (com.instructure.canvasapi2.models.QuizSubmissionTime)2 List (java.util.List)2 Activity (android.app.Activity)1 Bundle (android.os.Bundle)1 Nullable (android.support.annotation.Nullable)1 Fragment (android.support.v4.app.Fragment)1