use of com.instructure.canvasapi2.utils.ExhaustiveListCallback in project instructure-android by instructure.
the class DiscussionManager method getAllPinnedDiscussions.
public static void getAllPinnedDiscussions(@NonNull CanvasContext canvasContext, final boolean forceNetwork, StatusCallback<List<DiscussionTopicHeader>> callback) {
if (isTesting() || mTesting) {
// TODO:
} else {
final RestBuilder adapter = new RestBuilder(callback);
final RestParams params = new RestParams.Builder().withForceReadFromNetwork(forceNetwork).withPerPageQueryParam(false).build();
StatusCallback<List<DiscussionTopicHeader>> depaginatedCallback = new ExhaustiveListCallback<DiscussionTopicHeader>(callback) {
@Override
public void getNextPage(@NotNull StatusCallback<List<DiscussionTopicHeader>> callback, @NotNull String nextUrl, boolean isCached) {
DiscussionAPI.getNextPage(nextUrl, adapter, callback, params);
}
};
adapter.setStatusCallback(depaginatedCallback);
DiscussionAPI.getFirstPagePinnedDiscussions(canvasContext, adapter, depaginatedCallback, params);
}
}
use of com.instructure.canvasapi2.utils.ExhaustiveListCallback in project instructure-android by instructure.
the class DiscussionManager method getStudentGroupDiscussionTopicHeaderExhaustive.
public static void getStudentGroupDiscussionTopicHeaderExhaustive(@NonNull CanvasContext canvasContext, final long rootTopicId, final boolean forceNetwork, StatusCallback<List<DiscussionTopicHeader>> callback) {
if (isTesting() || mTesting) {
// TODO:
} else {
final RestBuilder adapter = new RestBuilder(callback);
final RestParams params = new RestParams.Builder().withForceReadFromNetwork(forceNetwork).withPerPageQueryParam(true).build();
StatusCallback<List<DiscussionTopicHeader>> depaginatedCallback = new ExhaustiveListCallback<DiscussionTopicHeader>(callback) {
@Override
public void getNextPage(@NotNull StatusCallback<List<DiscussionTopicHeader>> callback, @NotNull String nextUrl, boolean isCached) {
DiscussionAPI.getNextPage(nextUrl, adapter, callback, params);
}
};
adapter.setStatusCallback(depaginatedCallback);
DiscussionAPI.getFirstPageStudentGroupDiscussionTopicHeader(canvasContext, rootTopicId, depaginatedCallback, adapter, params);
}
}
use of com.instructure.canvasapi2.utils.ExhaustiveListCallback in project instructure-android by instructure.
the class EnrollmentManager method getAllEnrollmentsForCourse.
public static void getAllEnrollmentsForCourse(final long courseId, final String enrollmentType, final boolean forceNetwork, StatusCallback<List<Enrollment>> callback) {
if (isTesting() || mTesting) {
// TODO
} else {
final RestBuilder adapter = new RestBuilder(callback);
final RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withShouldIgnoreToken(false).withForceReadFromNetwork(forceNetwork).build();
StatusCallback<List<Enrollment>> depaginatedCallback = new ExhaustiveListCallback<Enrollment>(callback) {
@Override
public void getNextPage(@NonNull StatusCallback<List<Enrollment>> callback, @NonNull String nextUrl, boolean isCached) {
EnrollmentAPI.getNextPageEnrollments(forceNetwork, nextUrl, adapter, callback);
}
};
adapter.setStatusCallback(depaginatedCallback);
EnrollmentAPI.getFirstPageEnrollmentsForCourse(adapter, params, courseId, enrollmentType, depaginatedCallback);
}
}
use of com.instructure.canvasapi2.utils.ExhaustiveListCallback in project instructure-android by instructure.
the class FileFolderManager method getAllFiles.
public static void getAllFiles(long folderId, boolean forceNetwork, StatusCallback<List<FileFolder>> callback) {
if (isTesting() || mTesting) {
// TODO
} else {
final RestBuilder adapter = new RestBuilder(callback);
final RestParams params = new RestParams.Builder().withForceReadFromNetwork(forceNetwork).withPerPageQueryParam(true).build();
final StatusCallback<List<FileFolder>> depaginatedCallback = new ExhaustiveListCallback<FileFolder>(callback) {
@Override
public void getNextPage(@NonNull StatusCallback<List<FileFolder>> callback, @NonNull String nextUrl, boolean isCached) {
FileFolderAPI.getNextPageFilesFolder(adapter, nextUrl, callback, params);
}
};
FileFolderAPI.getFirstPageFiles(adapter, folderId, depaginatedCallback, params);
}
}
use of com.instructure.canvasapi2.utils.ExhaustiveListCallback in project instructure-android by instructure.
the class FileFolderManager method getAllFolders.
public static void getAllFolders(long folderId, boolean forceNetwork, StatusCallback<List<FileFolder>> callback) {
if (isTesting() || mTesting) {
// TODO
} else {
final RestBuilder adapter = new RestBuilder(callback);
final RestParams params = new RestParams.Builder().withForceReadFromNetwork(forceNetwork).withPerPageQueryParam(true).build();
final StatusCallback<List<FileFolder>> depaginatedCallback = new ExhaustiveListCallback<FileFolder>(callback) {
@Override
public void getNextPage(@NonNull StatusCallback<List<FileFolder>> callback, @NonNull String nextUrl, boolean isCached) {
FileFolderAPI.getNextPageFilesFolder(adapter, nextUrl, callback, params);
}
};
FileFolderAPI.getFirstPageFolders(adapter, folderId, depaginatedCallback, params);
}
}
Aggregations