View Javadoc

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.module;
18  
19  import com.sun.syndication.feed.CopyFrom;
20  
21  import java.util.List;
22  import java.util.Date;
23  
24  /**
25   * Dublin Core Module.
26   * <p>
27   * @see <a href="http://web.resource.org/rss/1.0/modules/dc/">Dublin Core module</a>.
28   * @author Alejandro Abdelnur
29   *
30   */
31  public interface DCModule extends Module,CopyFrom {
32  
33      /**
34       * URI of the Dublin Core Module (http://purl.org/dc/elements/1.1/).
35       *
36       */
37      String URI = "http://purl.org/dc/elements/1.1/";
38  
39      /**
40       * Returns the DublinCore module titles.
41       * <p>
42       * @return a list of Strings representing the DublinCore module title,
43       *         an empty list if none.
44       *
45       */
46      List getTitles();
47  
48      /**
49       * Sets the DublinCore module titles.
50       * <p>
51       * @param titles the list of String representing the DublinCore module titles
52       *        to set, an empty list or <b>null</b> if none.
53       *
54       */
55      void setTitles(List titles);
56  
57      /**
58       * Gets the DublinCore module title. Convenience method that can be used
59       * to obtain the first item, <b>null</b> if none.
60       * <p>
61       * @return the first DublinCore module title, <b>null</b> if none.
62       */
63      String getTitle();
64  
65      /**
66       * Sets the DublinCore module title. Convenience method that can be used
67       * when there is only one title to set.
68       * <p>
69       * @param title the DublinCore module title to set, <b>null</b> if none.
70       *
71       */
72      void setTitle(String title);
73  
74      /**
75       * Returns the DublinCore module creator.
76       * <p>
77       * @return a list of Strings representing the DublinCore module creator,
78       *         an empty list if none.
79       *
80       */
81      List getCreators();
82  
83      /**
84       * Sets the DublinCore module creators.
85       * <p>
86       * @param creators the list of String representing the DublinCore module
87       *        creators to set, an empty list or <b>null</b> if none.
88       *
89       */
90      void setCreators(List creators);
91  
92      /**
93       * Gets the DublinCore module creator. Convenience method that can be used
94       * to obtain the first item, <b>null</b> if none.
95       * <p>
96       * @return the first DublinCore module creator, <b>null</b> if none.
97       */
98      String getCreator();
99      
100     /**
101      * Sets the DublinCore module creator. Convenience method that can be used
102      * when there is only one creator to set.
103      * <p>
104      * @param creator the DublinCore module creator to set, <b>null</b> if none.
105      *
106      */
107     void setCreator(String creator);
108 
109     /**
110      * Returns the DublinCore module subjects.
111      * <p>
112      * @return a list of DCSubject elements with the DublinCore module subjects,
113      *         an empty list if none.
114      *
115      */
116     List getSubjects();
117 
118     /**
119      * Sets the DublinCore module subjects.
120      * <p>
121      * @param subjects the list of DCSubject elements with the DublinCore 
122      * 	      module subjects to set, an empty list or <b>null</b> if none.
123      *
124      */
125     void setSubjects(List subjects);
126 
127     /**
128      * Gets the DublinCore module subject. Convenience method that can be used
129      * to obtain the first item, <b>null</b> if none.
130      * <p>
131      * @return the first DublinCore module subject, <b>null</b> if none.
132      */
133     DCSubject getSubject();
134 
135     /**
136      * Sets the DCSubject element. Convenience method that can be used when
137      * there is only one subject to set.
138      * <p>
139      * @param subject the DublinCore module subject to set, <b>null</b> if none.
140      *
141      */
142     void setSubject(DCSubject subject);
143 
144     /**
145      * Returns the DublinCore module description.
146      * <p>
147      * @return a list of Strings representing the DublinCore module description,
148      *         an empty list if none.
149      *
150      */
151     List getDescriptions();
152 
153     /**
154      * Sets the DublinCore module descriptions.
155      * <p>
156      * @param descriptions the list of String representing the DublinCore
157      * 	     module descriptions to set, an empty list or <b>null</b> if none.
158      *
159      */
160     void setDescriptions(List descriptions);
161 
162     /**
163      * Gets the DublinCore module description. Convenience method that can be
164      * used to obtain the first item, <b>null</b> if none.
165      * <p>
166      * @return the first DublinCore module description, <b>null</b> if none.
167      */
168     String getDescription();
169 
170     /**
171      * Sets the DublinCore module description. Convenience method that can be
172      * used when there is only one description to set.
173      * <p>
174      * @param description the DublinCore module description to set, <b>null</b> if none.
175      *
176      */
177     void setDescription(String description);
178 
179     /**
180      * Returns the DublinCore module publisher.
181      * <p>
182      * @return a list of Strings representing the DublinCore module publisher,
183      *         an empty list if none.
184      *
185      */
186     List getPublishers();
187 
188     /**
189      * Sets the DublinCore module publishers.
190      * <p>
191      * @param publishers the list of String representing the DublinCore module
192      * 		publishers to set, an empty list or <b>null</b> if none.
193      *
194      */
195     void setPublishers(List publishers);
196 
197     /**
198      * Gets the DublinCore module publisher. Convenience method that can be
199      * used to obtain the first item, <b>null</b> if none.
200      * <p>
201      * @return the first DublinCore module publisher, <b>null</b> if none.
202      */
203     String getPublisher();
204 
205     /**
206      * Sets the DublinCore module publisher. Convenience method that can be used when
207      * there is only one publisher to set.
208      * <p>
209      * @param publisher the DublinCore module publisher to set, <b>null</b> if none.
210      *
211      */
212     void setPublisher(String publisher);
213 
214     /**
215      * Returns the DublinCore module contributor.
216      * <p>
217      * @return a list of Strings representing the DublinCore module contributor,
218      *         an empty list if none.
219      *
220      */
221     List getContributors();
222 
223     /**
224      * Sets the DublinCore module contributors.
225      * <p>
226      * @param contributors the list of String representing the DublinCore module
227      * 	     contributors to set, an empty list or <b>null</b> if none.
228      *
229      */
230     void setContributors(List contributors);
231 
232     /**
233      * Gets the DublinCore module contributor. Convenience method that can be
234      * used to obtain the first item, <b>null</b> if none.
235      * <p>
236      * @return the first DublinCore module contributor, <b>null</b> if none.
237      */
238     String getContributor();
239 
240     /**
241      * Sets the DublinCore module contributor. Convenience method that can be
242      * used when there is only one contributor to set.
243      * <p>
244      * @param contributor the DublinCore module contributor to set, <b>null</b> if none.
245      *
246      */
247     void setContributor(String contributor);
248 
249     /**
250      * Returns the DublinCore module date.
251      * <p>
252      * @return a list of Strings representing the DublinCore module date,
253      *         an empty list if none.
254      *
255      */
256     List getDates();
257 
258     /**
259      * Sets the DublinCore module dates.
260      * <p>
261      * @param dates the list of Date representing the DublinCore module dates to set,
262      *        an empty list or <b>null</b> if none.
263      *
264      */
265     void setDates(List dates);
266 
267     /**
268      * Gets the DublinCore module date. Convenience method that can be used to
269      * obtain the first item, <b>null</b> if none.
270      * <p>
271      * @return the first DublinCore module date, <b>null</b> if none.
272      */
273     Date getDate();
274 
275     /**
276      * Sets the DublinCore module date. Convenience method that can be used
277      * when there is only one date to set.
278      * <p>
279      * @param date the DublinCore module date to set, <b>null</b> if none.
280      *
281      */
282     void setDate(Date date);
283 
284     /**
285      * Returns the DublinCore module type.
286      * <p>
287      * @return a list of Strings representing the DublinCore module type,
288      *         an empty list if none.
289      *
290      */
291     List getTypes();
292 
293     /**
294      * Sets the DublinCore module types.
295      * <p>
296      * @param types the list of String representing the DublinCore module types to set,
297      *        an empty list or <b>null</b> if none.
298      *
299      */
300     void setTypes(List types);
301 
302     /**
303      * Gets the DublinCore module type. Convenience method that can be used
304      * to obtain the first item, <b>null</b> if none.
305      * <p>
306      * @return the first DublinCore module type, <b>null</b> if none.
307      */
308     String getType();
309 
310     /**
311      * Sets the DublinCore module type. Convenience method that can be used
312      * when there is only one type to set.
313      * <p>
314      * @param type the DublinCore module type to set, <b>null</b> if none.
315      *
316      */
317     void setType(String type);
318 
319     /**
320      * Returns the DublinCore module format.
321      * <p>
322      * @return a list of Strings representing the DublinCore module format,
323      *         an empty list if none.
324      *
325      */
326     List getFormats();
327 
328     /**
329      * Sets the DublinCore module formats.
330      * <p>
331      * @param formats the list of String representing the DublinCore module
332      * 		formats to set, an empty list or <b>null</b> if none.
333      *
334      */
335     void setFormats(List formats);
336 
337     /**
338      * Gets the DublinCore module format. Convenience method that can be used
339      * to obtain the first item, <b>null</b> if none.
340      * <p>
341      * @return the first DublinCore module format, <b>null</b> if none.
342      */
343     String getFormat();
344 
345     /**
346      * Sets the DublinCore module format. Convenience method that can be used
347      * when there is only one format to set.
348      * <p>
349      * @param format the DublinCore module format to set, <b>null</b> if none.
350      *
351      */
352     void setFormat(String format);
353 
354     /**
355      * Returns the DublinCore module identifier.
356      * <p>
357      * @return a list of Strings representing the DublinCore module identifier,
358      *         an empty list if none.
359      *
360      */
361     List getIdentifiers();
362 
363     /**
364      * Sets the DublinCore module identifiers.
365      * <p>
366      * @param identifiers the list of String representing the DublinCore module
367      * 	      identifiers to set, an empty list or <b>null</b> if none.
368      *
369      */
370     void setIdentifiers(List identifiers);
371 
372     /**
373      * Gets the DublinCore module identifier. Convenience method that can be
374      * used to obtain the first item, <b>null</b> if none.
375      * <p>
376      * @return the first DublinCore module identifier, <b>null</b> if none.
377      */
378     String getIdentifier();
379 
380     /**
381      * Sets the DublinCore module identifier. Convenience method that can be
382      * used when there is only one identifier to set.
383      * <p>
384      * @param identifier the DublinCore module identifier to set, <b>null</b> if none.
385      *
386      */
387     void setIdentifier(String identifier);
388 
389     /**
390      * Returns the DublinCore module source.
391      * <p>
392      * @return a list of Strings representing the DublinCore module source,
393      *         an empty list if none.
394      *
395      */
396     List getSources();
397 
398     /**
399      * Sets the DublinCore module sources.
400      * <p>
401      * @param sources the list of String representing the DublinCore module
402      * 	     sources to set, an empty list or <b>null</b> if none.
403      *
404      */
405     void setSources(List sources);
406 
407     /**
408      * Gets the DublinCore module subject. Convenience method that can be used
409      * to obtain the first item, <b>null</b> if none.
410      * <p>
411      * @return the first DublinCore module creator, <b>null</b> if none.
412      */
413     String getSource();
414 
415     /**
416      * Sets the DublinCore module source. Convenience method that can be used
417      * when there is only one source to set.
418      * <p>
419      * @param source the DublinCore module source to set, <b>null</b> if none.
420      *
421      */
422     void setSource(String source);
423 
424     /**
425      * Returns the DublinCore module language.
426      * <p>
427      * @return a list of Strings representing the DublinCore module language,
428      *         an empty list if none.
429      *
430      */
431     List getLanguages();
432 
433     /**
434      * Sets the DublinCore module languages.
435      * <p>
436      * @param languages the list of String representing the DublinCore module
437      * 	     languages to set, an empty list or <b>null</b> if none.
438      *
439      */
440     void setLanguages(List languages);
441 
442     /**
443      * Gets the DublinCore module language. Convenience method that can be used
444      * to obtain the first item, <b>null</b> if none.
445      * <p>
446      * @return the first DublinCore module language, <b>null</b> if none.
447      */
448     String getLanguage();
449 
450     /**
451      * Sets the DublinCore module language. Convenience method that can be used
452      * when there is only one language to set.
453      * <p>
454      * @param language the DublinCore module language to set, <b>null</b> if none.
455      *
456      */
457     void setLanguage(String language);
458 
459     /**
460      * Returns the DublinCore module relation.
461      * <p>
462      * @return a list of Strings representing the DublinCore module relation,
463      *         an empty list if none.
464      *
465      */
466     List getRelations();
467 
468     /**
469      * Sets the DublinCore module relations.
470      * <p>
471      * @param relations the list of String representing the DublinCore module
472      * 	     relations to set, an empty list or <b>null</b> if none.
473      *
474      */
475     void setRelations(List relations);
476 
477     /**
478      * Gets the DublinCore module relation. Convenience method that can be used
479      * to obtain the first item, <b>null</b> if none.
480      * <p>
481      * @return the first DublinCore module relation, <b>null</b> if none.
482      */
483     String getRelation();
484 
485     /**
486      * Sets the DublinCore module relation. Convenience method that can be used
487      * when there is only one relation to set.
488      * <p>
489      * @param relation the DublinCore module relation to set, <b>null</b> if none.
490      *
491      */
492     void setRelation(String relation);
493 
494     /**
495      * Returns the DublinCore module coverage.
496      * <p>
497      * @return a list of Strings representing the DublinCore module coverage,
498      *         an empty list if none.
499      *
500      */
501     List getCoverages();
502 
503     /**
504      * Sets the DublinCore module coverages.
505      * <p>
506      * @param coverages the list of String representing the DublinCore module
507      * 	     coverages to set, an empty list or <b>null</b> if none.
508      *
509      */
510     void setCoverages(List coverages);
511 
512     /**
513      * Gets the DublinCore module coverage. Convenience method that can be used
514      * to obtain the first item, <b>null</b> if none.
515      * <p>
516      * @return the first DublinCore module coverage, <b>null</b> if none.
517      */
518     String getCoverage();
519 
520     /**
521      * Sets the DublinCore module coverage. Convenience method that can be used
522      * when there is only one coverage to set.
523      * <p>
524      * @param coverage the DublinCore module coverage to set, <b>null</b> if none.
525      *
526      */
527     void setCoverage(String coverage);
528 
529     /**
530      * Returns the DublinCore module rights.
531      * <p>
532      * @return a list of Strings representing the DublinCore module rights,
533      *         an empty list if none.
534      *
535      */
536     List getRightsList();
537 
538     /**
539      * Sets the DublinCore module rightss.
540      * <p>
541      * @param rights the list of String representing the DublinCore module
542      * 	     rights to set, an empty list or <b>null</b> if none.
543      *
544      */
545     void setRightsList(List rights);
546 
547     /**
548      * Gets the DublinCore module right. Convenience method that can be used
549      * to obtain the first item, <b>null</b> if none.
550      * <p>
551      * @return the first DublinCore module right, <b>null</b> if none.
552      */
553     String getRights();
554 
555     /**
556      * Sets the DublinCore module rights. Convenience method that can be used
557      * when there is only one rights to set.
558      * <p>
559      * @param rights the DublinCore module rights to set, <b>null</b> if none.
560      *
561      */
562     void setRights(String rights);
563 }