KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > syndication > feed > atom > Feed


1 /*
2  * Copyright 2004 Sun Microsystems, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */

17 package com.sun.syndication.feed.atom;
18
19 import com.sun.syndication.feed.WireFeed;
20 import com.sun.syndication.feed.module.Module;
21 import com.sun.syndication.feed.module.impl.ModuleUtils;
22
23 import java.util.ArrayList JavaDoc;
24 import java.util.Date JavaDoc;
25 import java.util.List JavaDoc;
26
27 /**
28  * Bean for Atom feeds.
29  * <p>
30  * It handles Atom feeds version 0.3 without loosing any feed information.
31  * <p>
32  * @author Alejandro Abdelnur
33  *
34  */

35 public class Feed extends WireFeed {
36     private String JavaDoc _language;
37     private String JavaDoc _title;
38     private List JavaDoc _alternateLinks;
39     private List JavaDoc _otherLinks;
40     private Person _author;
41     private List JavaDoc _contributors;
42     private Content _tagline;
43     private String JavaDoc _id;
44     private Generator _generator;
45     private String JavaDoc _copyright;
46     private Content _info;
47     private Date JavaDoc _modified;
48     private List JavaDoc _entries;
49     private List JavaDoc _modules;
50
51     /**
52      * Default constructor, for bean cloning purposes only.
53      *
54      */

55     public Feed() {
56     }
57
58     /**
59      * Feed Constructor. All properties, except the type, are set to <b>null</b>.
60      * <p>
61      * @param type the type of the Atom feed.
62      *
63      */

64     public Feed(String JavaDoc type) {
65         super(type);
66     }
67
68     /**
69      * Returns the feed language.
70      * <p>
71      * @return the feed language, <b>null</b> if none.
72      *
73      */

74     public String JavaDoc getLanguage() {
75         return _language;
76     }
77
78     /**
79      * Sets the feed language.
80      * <p>
81      * @param language the feed language to set, <b>null</b> if none.
82      *
83      */

84     public void setLanguage(String JavaDoc language) {
85         _language = language;
86     }
87
88     /**
89      * Returns the feed title.
90      * <p>
91      * @return the feed title, <b>null</b> if none.
92      *
93      */

94     public String JavaDoc getTitle() {
95         return _title;
96     }
97
98     /**
99      * Sets the feed title.
100      * <p>
101      * @param title the feed title to set, <b>null</b> if none.
102      *
103      */

104     public void setTitle(String JavaDoc title) {
105         _title = title;
106     }
107
108     /**
109      * Returns the feed alternate links.
110      * <p>
111      * @return a list of Link elements with the feed alternate links,
112      * an empty list if none.
113      *
114      */

115     public List JavaDoc getAlternateLinks() {
116         return (_alternateLinks==null) ? (_alternateLinks=new ArrayList JavaDoc()) : _alternateLinks;
117     }
118
119     /**
120      * Sets the feed alternate links.
121      * <p>
122      * @param alternateLinks the list of Link elements with the feed alternate links to set,
123      * an empty list or <b>null</b> if none.
124      *
125      */

126     public void setAlternateLinks(List JavaDoc alternateLinks) {
127         _alternateLinks = alternateLinks;
128     }
129
130     /**
131      * Returns the feed other links (non-alternate ones).
132      * <p>
133      * @return a list of Link elements with the feed other links (non-alternate ones),
134      * an empty list if none.
135      *
136      */

137     public List JavaDoc getOtherLinks() {
138         return (_otherLinks==null) ? (_otherLinks=new ArrayList JavaDoc()) : _otherLinks;
139     }
140
141     /**
142      * Sets the feed other links (non-alternate ones).
143      * <p>
144      * @param otherLinks the list of Link elements with the feed other links (non-alternate ones) to set,
145      * an empty list or <b>null</b> if none.
146      *
147      */

148     public void setOtherLinks(List JavaDoc otherLinks) {
149         _otherLinks = otherLinks;
150     }
151
152     /**
153      * Returns the feed author.
154      * <p>
155      * @return the feed author, <b>null</b> if none.
156      *
157      */

158     public Person getAuthor() {
159         return _author;
160     }
161
162     /**
163      * Sets the feed author.
164      * <p>
165      * @param author the feed author to set, <b>null</b> if none.
166      *
167      */

168     public void setAuthor(Person author) {
169         _author = author;
170     }
171
172     /**
173      * Returns the feed contributors.
174      * <p>
175      * @return a list of Person elements with the feed contributors,
176      * an empty list if none.
177      *
178      */

179     public List JavaDoc getContributors() {
180         return (_contributors==null) ? (_contributors=new ArrayList JavaDoc()) : _contributors;
181     }
182
183     /**
184      * Sets the feed contributors.
185      * <p>
186      * @param contributors the list of Person elements with the feed contributors to set,
187      * an empty list or <b>null</b> if none.
188      *
189      */

190     public void setContributors(List JavaDoc contributors) {
191         _contributors = contributors;
192     }
193
194     /**
195      * Returns the feed tag line.
196      * <p>
197      * @return the feed tag line, <b>null</b> if none.
198      *
199      */

200     public Content getTagline() {
201         return _tagline;
202     }
203
204     /**
205      * Sets the feed tagline.
206      * <p>
207      * @param tagline the feed tagline to set, <b>null</b> if none.
208      *
209      */

210     public void setTagline(Content tagline) {
211         _tagline = tagline;
212     }
213
214     /**
215      * Returns the feed ID.
216      * <p>
217      * @return the feed ID, <b>null</b> if none.
218      *
219      */

220     public String JavaDoc getId() {
221         return _id;
222     }
223
224     /**
225      * Sets the feed ID.
226      * <p>
227      * @param id the feed ID to set, <b>null</b> if none.
228      *
229      */

230     public void setId(String JavaDoc id) {
231         _id = id;
232     }
233
234     /**
235      * Returns the feed generator.
236      * <p>
237      * @return the feed generator, <b>null</b> if none.
238      *
239      */

240     public Generator getGenerator() {
241         return _generator;
242     }
243
244     /**
245      * Sets the feed generator.
246      * <p>
247      * @param generator the feed generator to set, <b>null</b> if none.
248      *
249      */

250     public void setGenerator(Generator generator) {
251         _generator = generator;
252     }
253
254     /**
255      * Returns the feed copyright.
256      * <p>
257      * @return the feed copyright, <b>null</b> if none.
258      *
259      */

260     public String JavaDoc getCopyright() {
261         return _copyright;
262     }
263
264     /**
265      * Sets the feed copyright.
266      * <p>
267      * @param copyright the feed copyright to set, <b>null</b> if none.
268      *
269      */

270     public void setCopyright(String JavaDoc copyright) {
271         _copyright = copyright;
272     }
273
274     /**
275      * Returns the feed info.
276      * <p>
277      * @return the feed info, <b>null</b> if none.
278      *
279      */

280     public Content getInfo() {
281         return _info;
282     }
283
284     /**
285      * Sets the feed info.
286      * <p>
287      * @param info the feed info to set, <b>null</b> if none.
288      *
289      */

290     public void setInfo(Content info) {
291         _info = info;
292     }
293
294     /**
295      * Returns the feed modified date.
296      * <p>
297      * @return the feed modified date, <b>null</b> if none.
298      *
299      */

300     public Date JavaDoc getModified() {
301         return _modified;
302     }
303
304     /**
305      * Sets the feed modified date.
306      * <p>
307      * @param modified the feed modified date to set, <b>null</b> if none.
308      *
309      */

310     public void setModified(Date JavaDoc modified) {
311         _modified = modified;
312     }
313
314     /**
315      * Returns the feed entries.
316      * <p>
317      * @return a list of Entry elements with the feed entries,
318      * an empty list if none.
319      *
320      */

321     public List JavaDoc getEntries() {
322         return (_entries==null) ? (_entries=new ArrayList JavaDoc()) : _entries;
323     }
324
325     /**
326      * Sets the feed entries.
327      * <p>
328      * @param entries the list of Entry elements with the feed entries to set,
329      * an empty list or <b>null</b> if none.
330      *
331      */

332     public void setEntries(List JavaDoc entries) {
333         _entries = entries;
334     }
335
336     /**
337      * Returns the feed modules.
338      * <p>
339      * @return a list of ModuleImpl elements with the feed modules,
340      * an empty list if none.
341      *
342      */

343     public List JavaDoc getModules() {
344         return (_modules==null) ? (_modules=new ArrayList JavaDoc()) : _modules;
345     }
346
347     /**
348      * Sets the feed moduless.
349      * <p>
350      * @param modules the list of ModuleImpl elements with the feed moduless to set,
351      * an empty list or <b>null</b> if none.
352      *
353      */

354     public void setModules(List JavaDoc modules) {
355         _modules = modules;
356     }
357
358     /**
359      * Returns the module identified by a given URI.
360      * <p>
361      * @param uri the URI of the ModuleImpl.
362      * @return The module with the given URI, <b>null</b> if none.
363      */

364     public Module getModule(String JavaDoc uri) {
365         return ModuleUtils.getModule(_modules,uri);
366     }
367
368
369 }
370
371
Popular Tags