use of com.instructure.canvasapi2.models.CanvasContext in project instructure-android by instructure.
the class DiscussionManager method createStudentDiscussion.
public static void createStudentDiscussion(CanvasContext canvasContext, DiscussionTopicHeader newDiscussionHeader, @Nullable MultipartBody.Part attachment, StatusCallback<DiscussionTopicHeader> callback) {
if (isTesting() || mTesting) {
// TODO
} else {
RestBuilder adapter = new RestBuilder(callback);
RestParams params = new RestParams.Builder().withPerPageQueryParam(false).withShouldIgnoreToken(false).build();
DiscussionAPI.createStudentDiscussion(adapter, params, canvasContext, newDiscussionHeader, attachment, callback);
}
}
use of com.instructure.canvasapi2.models.CanvasContext in project instructure-android by instructure.
the class DiscussionManager method getDiscussionEntries.
public static void getDiscussionEntries(CanvasContext canvasContext, long topicId, boolean forceNetwork, StatusCallback<List<DiscussionEntry>> callback) {
if (isTesting() || mTesting) {
// TODO:
} else {
RestBuilder adapter = new RestBuilder(callback);
RestParams params = new RestParams.Builder().withPerPageQueryParam(true).withForceReadFromNetwork(forceNetwork).build();
DiscussionAPI.getDiscussionEntries(adapter, canvasContext, topicId, callback, params);
}
}
use of com.instructure.canvasapi2.models.CanvasContext in project instructure-android by instructure.
the class DiscussionManager method createDiscussion.
public static void createDiscussion(@NonNull CanvasContext canvasContext, @NonNull String title, @NonNull String message, boolean isThreaded, boolean isAnnouncement, boolean isPublished, StatusCallback<DiscussionTopicHeader> callback) {
if (isTesting() || mTesting) {
// TODO:
} else {
RestBuilder adapter = new RestBuilder(callback);
RestParams params = new RestParams.Builder().withPerPageQueryParam(false).withShouldIgnoreToken(false).build();
DiscussionAPI.createDiscussion(adapter, params, canvasContext, title, message, isThreaded, isAnnouncement, isPublished, callback);
}
}
use of com.instructure.canvasapi2.models.CanvasContext in project instructure-android by instructure.
the class DiscussionManager method markAllDiscussionTopicEntriesRead.
public static void markAllDiscussionTopicEntriesRead(CanvasContext canvasContext, long topicId, StatusCallback<Void> callback) {
if (isTesting() || mTesting) {
// TODO:
} else {
RestBuilder adapter = new RestBuilder(callback);
DiscussionAPI.markAllDiscussionTopicEntriesRead(adapter, canvasContext, topicId, callback, new RestParams.Builder().build());
}
}
use of com.instructure.canvasapi2.models.CanvasContext 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);
}
}
Aggregations