Search in sources :

Example 6 with AssignmentGroup

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

the class AssignmentManager method getAssignmentGroupsWithAssignments.

public static void getAssignmentGroupsWithAssignments(long courseId, final boolean forceNetwork, StatusCallback<List<AssignmentGroup>> callback) {
    if (isTesting() || mTesting) {
        AssignmentManager_Test.getAssignmentGroupsWithAssignments(courseId, callback);
    } else {
        final RestBuilder adapter = new RestBuilder(callback);
        RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
        StatusCallback<List<AssignmentGroup>> depaginatedCallback = new ExhaustiveListCallback<AssignmentGroup>(callback) {

            @Override
            public void getNextPage(StatusCallback<List<AssignmentGroup>> callback, String nextUrl, boolean isCached) {
                AssignmentAPI.getNextPageAssignmentGroupsWithAssignments(forceNetwork, nextUrl, adapter, callback);
            }
        };
        adapter.setStatusCallback(depaginatedCallback);
        AssignmentAPI.getFirstPageAssignmentGroupsWithAssignments(courseId, adapter, callback, params);
    }
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) AssignmentGroup(com.instructure.canvasapi2.models.AssignmentGroup) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) List(java.util.List) StatusCallback(com.instructure.canvasapi2.StatusCallback) ExhaustiveListCallback(com.instructure.canvasapi2.utils.ExhaustiveListCallback)

Example 7 with AssignmentGroup

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

the class AssignmentManager_Test method getAssignmentGroupsWithAssignments.

public static void getAssignmentGroupsWithAssignments(long courseId, StatusCallback<List<AssignmentGroup>> callback) {
    // TODO:
    Response httpResponse = new Response.Builder().request(new Request.Builder().url("https://test.com").build()).code(200).message("todo").protocol(Protocol.HTTP_1_0).body(ResponseBody.create(MediaType.parse("application/json"), "todo".getBytes())).addHeader("content-type", "application/json").build();
    List<AssignmentGroup> assignments = new ArrayList<>();
    retrofit2.Response<List<AssignmentGroup>> response = retrofit2.Response.success(assignments, httpResponse);
    callback.onResponse(response, new LinkHeaders(), ApiType.CACHE);
}
Also used : Response(okhttp3.Response) LinkHeaders(com.instructure.canvasapi2.utils.LinkHeaders) Request(okhttp3.Request) AssignmentGroup(com.instructure.canvasapi2.models.AssignmentGroup) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List)

Example 8 with AssignmentGroup

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

the class AssignmentManager_Test method getAssignmentGroupsWithAssignmentsForGradingPeriod.

public static void getAssignmentGroupsWithAssignmentsForGradingPeriod(long courseId, StatusCallback<List<AssignmentGroup>> callback, long gradingPeriodId) {
    // TODO:
    Response httpResponse = new Response.Builder().request(new Request.Builder().url("https://test.com").build()).code(200).message("todo").protocol(Protocol.HTTP_1_0).body(ResponseBody.create(MediaType.parse("application/json"), "todo".getBytes())).addHeader("content-type", "application/json").build();
    List<AssignmentGroup> assignments = new ArrayList<>();
    retrofit2.Response<List<AssignmentGroup>> response = retrofit2.Response.success(assignments, httpResponse);
    callback.onResponse(response, new LinkHeaders(), ApiType.CACHE);
}
Also used : Response(okhttp3.Response) LinkHeaders(com.instructure.canvasapi2.utils.LinkHeaders) Request(okhttp3.Request) AssignmentGroup(com.instructure.canvasapi2.models.AssignmentGroup) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List)

Example 9 with AssignmentGroup

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

the class AssignmentManager_Test method getAssignmentGroup.

public static void getAssignmentGroup(long courseId, long assignmentGroupId, StatusCallback<AssignmentGroup> callback) {
    // TODO:
    Response httpResponse = new Response.Builder().request(new Request.Builder().url("https://test.com").build()).code(200).message("todo").protocol(Protocol.HTTP_1_0).body(ResponseBody.create(MediaType.parse("application/json"), "todo".getBytes())).addHeader("content-type", "application/json").build();
    AssignmentGroup assignmentGroup = new AssignmentGroup();
    retrofit2.Response<AssignmentGroup> response = retrofit2.Response.success(assignmentGroup, httpResponse);
    callback.onResponse(response, new LinkHeaders(), ApiType.CACHE);
}
Also used : Response(okhttp3.Response) LinkHeaders(com.instructure.canvasapi2.utils.LinkHeaders) Request(okhttp3.Request) AssignmentGroup(com.instructure.canvasapi2.models.AssignmentGroup)

Example 10 with AssignmentGroup

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

the class AssignmentManager method getAssignmentGroupsWithAssignmentsForGradingPeriod.

public static void getAssignmentGroupsWithAssignmentsForGradingPeriod(long courseId, final long gradingPeriodId, boolean scopeToStudent, final boolean forceNetwork, StatusCallback<List<AssignmentGroup>> callback) {
    if (isTesting() || mTesting) {
        AssignmentManager_Test.getAssignmentGroupsWithAssignmentsForGradingPeriod(courseId, callback, gradingPeriodId);
    } else {
        final RestBuilder adapter = new RestBuilder(callback);
        RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
        StatusCallback<List<AssignmentGroup>> depaginatedCallback = new ExhaustiveListCallback<AssignmentGroup>(callback) {

            @Override
            public void getNextPage(StatusCallback<List<AssignmentGroup>> callback, String nextUrl, boolean isCached) {
                AssignmentAPI.getNextPageAssignmentGroupsWithAssignmentsForGradingPeriod(forceNetwork, nextUrl, adapter, callback);
            }
        };
        adapter.setStatusCallback(depaginatedCallback);
        AssignmentAPI.getFirstPageAssignmentGroupsWithAssignmentsForGradingPeriod(courseId, gradingPeriodId, scopeToStudent, adapter, callback, params);
    }
}
Also used : RestParams(com.instructure.canvasapi2.builders.RestParams) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) AssignmentGroup(com.instructure.canvasapi2.models.AssignmentGroup) RestBuilder(com.instructure.canvasapi2.builders.RestBuilder) List(java.util.List) StatusCallback(com.instructure.canvasapi2.StatusCallback) ExhaustiveListCallback(com.instructure.canvasapi2.utils.ExhaustiveListCallback)

Aggregations

AssignmentGroup (com.instructure.canvasapi2.models.AssignmentGroup)6 RestBuilder (com.instructure.canvasapi2.builders.RestBuilder)5 RestParams (com.instructure.canvasapi2.builders.RestParams)5 List (java.util.List)4 LinkHeaders (com.instructure.canvasapi2.utils.LinkHeaders)3 Request (okhttp3.Request)3 Response (okhttp3.Response)3 StatusCallback (com.instructure.canvasapi2.StatusCallback)2 Assignment (com.instructure.canvasapi2.models.Assignment)2 ExhaustiveListCallback (com.instructure.canvasapi2.utils.ExhaustiveListCallback)2 ArrayList (java.util.ArrayList)2 Bundle (android.os.Bundle)1 AppBarLayout (android.support.design.widget.AppBarLayout)1 RecyclerView (android.support.v7.widget.RecyclerView)1 View (android.view.View)1 AdapterView (android.widget.AdapterView)1 AssignmentDateListRecyclerAdapter (com.instructure.candroid.adapter.AssignmentDateListRecyclerAdapter)1 AdapterToAssignmentsCallback (com.instructure.candroid.interfaces.AdapterToAssignmentsCallback)1 Course (com.instructure.canvasapi2.models.Course)1 Submission (com.instructure.canvasapi2.models.Submission)1