You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
45 lines
1.4 KiB
package com.github.jreddit.request.retrieval.submissions;
|
|
|
|
import com.github.jreddit.request.retrieval.ListingRequest;
|
|
import com.github.jreddit.request.retrieval.param.TimeSpan;
|
|
import com.github.jreddit.request.retrieval.param.UserOverviewSort;
|
|
import com.github.jreddit.request.retrieval.param.UserSubmissionsCategory;
|
|
|
|
public class SubmissionsOfUserRequest extends ListingRequest {
|
|
|
|
private static final String ENDPOINT_FORMAT = "/user/%s/%s.json?%s";
|
|
|
|
private UserSubmissionsCategory category;
|
|
private String username;
|
|
|
|
/**
|
|
* @param username Username of a user (e.g. "JohnM")
|
|
* @param category Category of user submissions
|
|
*/
|
|
public SubmissionsOfUserRequest(String username, UserSubmissionsCategory category) {
|
|
this.username = username;
|
|
this.category = category;
|
|
}
|
|
|
|
public SubmissionsOfUserRequest setSort(UserOverviewSort sort) {
|
|
this.addParameter("sort", sort.value());
|
|
return this;
|
|
}
|
|
|
|
public SubmissionsOfUserRequest setTime(TimeSpan time) {
|
|
this.addParameter("t", time.value());
|
|
return this;
|
|
}
|
|
|
|
public SubmissionsOfUserRequest setShowGiven() {
|
|
this.addParameter("show", "given");
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public String generateRedditURI() {
|
|
return String.format(ENDPOINT_FORMAT, username, category.value(), this.generateParameters());
|
|
}
|
|
|
|
}
|