NewsResponse.java
package com.foxinmy.weixin4j.response;
import java.util.ArrayList;
import java.util.List;
/**
* 回复图文消息
*
* @className NewsResponse
* @author jinyu(foxinmy@gmail.com)
* @date 2015年5月5日
* @since JDK 1.6
* @see
*/
public class NewsResponse implements WeixinResponse {
/**
* 图文集合
*/
private List<Article> articleList;
public NewsResponse(List<Article> articleList) {
this.articleList = articleList;
}
public NewsResponse(Article article) {
this.articleList = new ArrayList<Article>();
this.articleList.add(article);
}
public void pushArticle(Article article) {
articleList.add(article);
}
public void pushFirstArticle(Article article) {
articleList.add(0, article);
}
public void pushLastArticle(Article article) {
articleList.add(articleList.size(), article);
}
public Article removeLastArticle() {
return articleList.remove(articleList.size() - 1);
}
public Article removeFirstArticle() {
return articleList.remove(0);
}
public List<Article> getArticleList() {
return articleList;
}
@Override
public String toContent() {
StringBuilder content = new StringBuilder();
content.append(String.format("<ArticleCount>%d</ArticleCount>",
articleList.size()));
content.append("<Articles>");
for (Article article : articleList) {
content.append("<item>");
content.append(String.format("<Title><![CDATA[%s]]></Title>",
article.getTitle() != null ? article.getTitle() : ""));
content.append(String.format(
"<Description><![CDATA[%s]]></Description>",
article.getDesc() != null ? article.getDesc() : ""));
content.append(String.format("<Url><![CDATA[%s]]></Url>",
article.getUrl() != null ? article.getUrl() : ""));
content.append(String.format("<PicUrl><![CDATA[%s]]></PicUrl>",
article.getPicUrl() != null ? article.getPicUrl() : ""));
content.append("</item>");
}
content.append("</Articles>");
return content.toString();
}
@Override
public String getMsgType() {
return "news";
}
/**
* 图文消息对象
*
* @className Article
* @author jinyu(foxinmy@gmail.com)
* @date 2015年5月5日
* @since JDK 1.6
* @see
*/
public static class Article {
/**
* 图文消息标题
*/
private String title;
/**
* 图文消息描述
*/
private String desc;
/**
* 点击图文消息跳转链接
*/
private String url;
/**
* 图片链接,支持JPG、PNG格式,较好的效果为大图360*200,小图200*200
*/
private String picUrl;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getPicUrl() {
return picUrl;
}
public void setPicUrl(String picUrl) {
this.picUrl = picUrl;
}
public Article() {
}
public Article(String title, String desc, String url, String picUrl) {
this.title = title;
this.desc = desc;
this.url = url;
this.picUrl = picUrl;
}
@Override
public String toString() {
return "Article [title=" + title + ", desc=" + desc + ", url="
+ url + ", picUrl=" + picUrl + "]";
}
}
}