weiboclient4j.CommentService Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of weiboclient4j Show documentation
Show all versions of weiboclient4j Show documentation
Java library for Sina Weibo
package weiboclient4j;
import weiboclient4j.model.Comment;
import weiboclient4j.model.CommentList;
import weiboclient4j.params.Cid;
import weiboclient4j.params.CommentOri;
import weiboclient4j.params.CommentParam;
import weiboclient4j.params.FilterByAuthor;
import weiboclient4j.params.FilterBySource;
import weiboclient4j.params.Id;
import weiboclient4j.params.Paging;
import weiboclient4j.params.WithoutMention;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
* @author Hover Ruan
*/
public class CommentService extends AbstractService {
public CommentService(WeiboClient client) {
super(client);
}
public CommentList getComments(Id id) throws WeiboClientException {
return getComments(id, Paging.EMPTY);
}
public CommentList getComments(Id id, Paging paging) throws WeiboClientException {
return getComments(id, paging, FilterByAuthor.All);
}
public CommentList getComments(Id id, Paging paging, FilterByAuthor filterByAuthor) throws WeiboClientException {
return doGet("comments/show",
paging, withParams(id, filterByAuthor), CommentList.class);
}
public CommentList getCommentsByMe() throws WeiboClientException {
return getCommentsByMe(Paging.EMPTY);
}
public CommentList getCommentsByMe(Paging paging) throws WeiboClientException {
return getCommentsByMe(paging, FilterByAuthor.All);
}
public CommentList getCommentsByMe(Paging paging, FilterByAuthor filterByAuthor) throws WeiboClientException {
return doGet("comments/by_me",
paging, withParams(filterByAuthor), CommentList.class);
}
public CommentList getCommentsToMe() throws WeiboClientException {
return getCommentsToMe(Paging.EMPTY);
}
public CommentList getCommentsToMe(Paging paging) throws WeiboClientException {
return getCommentsToMe(paging, FilterByAuthor.All, FilterBySource.All);
}
public CommentList getCommentsToMe(Paging paging, FilterByAuthor filterByAuthor, FilterBySource filterBySource)
throws WeiboClientException {
return doGet("comments/to_me",
paging, withParams(filterByAuthor, filterBySource), CommentList.class);
}
public CommentList getCommentsTimeline() throws WeiboClientException {
return getCommentsTimeline(Paging.EMPTY);
}
public CommentList getCommentsTimeline(Paging paging) throws WeiboClientException {
return doGet("comments/timeline", paging, CommentList.class);
}
public CommentList getMentionsComments() throws WeiboClientException {
return getMentionsComments(Paging.EMPTY);
}
public CommentList getMentionsComments(Paging paging) throws WeiboClientException {
return getMentionsComments(paging, FilterByAuthor.All, FilterBySource.All);
}
public CommentList getMentionsComments(Paging paging, FilterByAuthor filterByAuthor, FilterBySource filterBySource)
throws WeiboClientException {
return doGet("comments/mentions",
paging, withParams(filterByAuthor, filterBySource), CommentList.class);
}
public List getCommentsBatch(Collection cids) throws WeiboClientException {
return doGet("comments/show_batch",
withParams(Cid.cidsParam(cids)), Comment.TYPE_COMMENT_LIST);
}
public Comment createComment(Id id, String comment) throws WeiboClientException {
return createComment(id, comment, CommentOri.No);
}
public Comment createComment(Id id, CommentParam comment, CommentOri commentOri) throws WeiboClientException {
return doPost("comments/create",
withParams(id, comment, commentOri), Comment.class);
}
public Comment createComment(Id id, String comment, CommentOri commentOri) throws WeiboClientException {
return createComment(id, new CommentParam(comment), commentOri);
}
public Comment destroyComment(Cid cid) throws WeiboClientException {
return doPost("comments/destroy", withParams(cid), Comment.class);
}
public List destroyCommentBatch(Collection cids) throws WeiboClientException {
List ids = new ArrayList(cids.size());
for (Cid cid : cids) {
ids.add(new Id(cid.getValue()));
}
return doPost("comments/destroy_batch",
withParams(Id.idsParam(ids)), Comment.TYPE_COMMENT_LIST);
}
public Comment replyComment(Id id, Cid cid, String comment) throws WeiboClientException {
return replyComment(id, cid, comment, WithoutMention.No, CommentOri.No);
}
public Comment replyComment(Id id, Cid cid, String comment, WithoutMention withoutMention, CommentOri commentOri)
throws WeiboClientException {
return replyComment(id, cid, new CommentParam(comment), withoutMention, commentOri);
}
public Comment replyComment(Id id, Cid cid, CommentParam comment, WithoutMention withoutMention,
CommentOri commentOri) throws WeiboClientException {
return doPost("comments/reply",
withParams(id, cid, comment, withoutMention, commentOri), Comment.class);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy