📄 channel.java
字号:
package cn.pfc.ywt.writer;
import java.util.ArrayList;
import java.util.Date;
/**
* <p>
* Name: Channel.java
*
* <p>
* Title: RSS中的频道类
*
* <p>
* Description: 该类中描述了了RSS的频道元素中需要的全部子元素信息
*
* <p>
* Copyright: Copyright (c) 2007
*
* <p>
* Company: 北大方正软件技术学院实训基地
*
* <p>
* Modified: 2007年12月22日
*
* <p>
* Remarks: 目前还有两个元素没有具体查清楚用途、类型以及使用方法 <br>
* 1.skipHours 告诉使用者哪些时段是可以忽略的 <br>
* 2.skipDays 告诉使用者哪些天是可以忽略的
*
* @author 杨文通
* @version 1.0
*/
public class Channel extends RssElement {
// 频道(channel)名称,必选。它可以告诉别人如何访问你的服务。如果你有一个与你的RSS文件内容一致的HTML网站,你的title元素值应该与你的网站的标题相同。
private String title;
// 响应该频道的网站的URL,必选
private String link;
// 关于该频道的描述,必选
private String description;
// 使用的语言。这允许聚合器对所有的意大利语站点分组。
private String language;
// 版权声明
private String copyright;
// 内容负责人的Email
private String managingEditor;
// 技术人员的Email
private String webMaster;
// 内容的发布时间,例如:Sat, 07 Sep 2002 00:00:01 GMT
private String pubDate;
// 最后更新时间,例如:Sat, 07 Sep 2002 09:42:31 GMT
private String lastBuildDate;
// 指定该频道所属的一个或多个分类。遵循与item级category元素相同的规则。
private ArrayList<Category> categories = new ArrayList<Category>();
// 生成该频道的程序名称,例如:MightyInHouse Content System v2.3
private String generator;
// 指向rss格式文档的url地址
private String docs;
// 允许所有进程注册一个cloud用于获得频道的更新通知,并为rss种子实现一个轻量级的发布订阅协议。
private Cloud cloud;
// ttl是Time to live的缩写。它指示cache的有效保存时间。例如:<ttl>60</ttl>
private int ttl;
// 与频道一起显示的图片地址
private Image image;
// 该频道的统计图片地址
private String rating;
// 指定一个textbox与该频道一起显示
private TextInput textInput;
// 项目节点
private ArrayList<Item> items = new ArrayList<Item>();
public ArrayList<Category> getCategories() {
return categories;
}
public void addCategories(Category category) {
this.categories.add(category);
}
public Cloud getCloud() {
return cloud;
}
public void setCloud(Cloud cloud) {
this.cloud = cloud;
}
public String getCopyright() {
return copyright;
}
public void setCopyright(String copyright) {
this.copyright = copyright;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getDocs() {
return docs;
}
public void setDocs(String docs) {
this.docs = docs;
}
public String getGenerator() {
return generator;
}
public void setGenerator(String generator) {
this.generator = generator;
}
public Image getImage() {
return image;
}
public void setImage(Image image) {
this.image = image;
}
public ArrayList<Item> getItems() {
return items;
}
public void addItems(Item item) {
this.items.add(item);
}
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public String getLastBuildDate() {
return lastBuildDate;
}
public void setLastBuildDate(Date lastBuildDate) {
this.lastBuildDate = this.getDateAsString(lastBuildDate);
}
public void setLastBuildDate(String lastBuildDate) {
this.lastBuildDate = lastBuildDate;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
public String getManagingEditor() {
return managingEditor;
}
public void setManagingEditor(String managingEditor) {
this.managingEditor = managingEditor;
}
public String getPubDate() {
return pubDate;
}
public void setPubDate(Date date) {
this.pubDate = this.getDateAsString(date);
}
public void setPubDate(String pubDate) {
this.pubDate = pubDate;
}
public String getRating() {
return rating;
}
public void setRating(String rating) {
this.rating = rating;
}
public TextInput getTextInput() {
return textInput;
}
public void setTextInput(TextInput textInput) {
this.textInput = textInput;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public int getTtl() {
return ttl;
}
public void setTtl(int ttl) {
this.ttl = ttl;
}
public String getWebMaster() {
return webMaster;
}
public void setWebMaster(String webMaster) {
this.webMaster = webMaster;
}
public void setCategories(ArrayList<Category> categories) {
this.categories = categories;
}
public void setItems(ArrayList<Item> items) {
this.items = items;
}
public Channel(String title, String link, String description) {
super();
this.title = title;
this.link = link;
this.description = description;
}
public Channel() {
super();
}
@Override
public String toString() {
StringBuilder str = new StringBuilder(32);
str.append("<channel>");
str.append("<title><![CDATA[" + strNotNull(this.title) + "]]></title>");
str.append("<link><![CDATA[" + strNotNull(this.link) + "]]></link>");
str.append("<description><![CDATA[" + strNotNull(this.description)
+ "]]></description>");
if (strNotNull(this.language).length() > 0) {
str.append("<language>" + this.language + "</language>");
}
if (strNotNull(this.copyright).length() > 0) {
str.append("<copyright><![CDATA[" + this.copyright
+ "]]></copyright>");
}
if (strNotNull(this.managingEditor).length() > 0) {
str.append("<managingEditor>" + this.managingEditor
+ "</managingEditor>");
}
if (strNotNull(this.webMaster).length() > 0) {
str.append("<webMaster>" + this.webMaster + "</webMaster>");
}
if (strNotNull(this.pubDate).length() > 0) {
str.append("<pubDate>" + this.pubDate + "</pubDate>");
}
if (strNotNull(this.lastBuildDate).length() > 0) {
str.append("<lastBuildDate>" + this.lastBuildDate
+ "</lastBuildDate>");
}
for (Category category : categories) {
str.append("<category>" + category + "</category>");
}
if (strNotNull(this.generator).length() > 0) {
str.append("<generator>" + this.generator + "</generator>");
}
if (strNotNull(this.docs).length() > 0) {
str.append("<docs>" + this.docs + "</docs>");
}
if (this.cloud != null) {
str.append(this.cloud);
}
if (this.ttl > 0) {
str.append("<ttl>" + this.ttl + "</ttl>");
}
if (this.image != null) {
str.append(this.image);
}
if (strNotNull(this.rating).length() > 0) {
str.append("<rating>" + this.rating + "</rating>");
}
if (this.textInput != null) {
str.append(this.textInput);
}
for (Item item : items) {
str.append(item);
}
str.append("</channel>");
return str.toString();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -