001: /*
002: * Copyright 2004 Sun Microsystems, Inc.
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License");
005: * you may not use this file except in compliance with the License.
006: * You may obtain a copy of the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS,
012: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013: * See the License for the specific language governing permissions and
014: * limitations under the License.
015: *
016: */
017: package com.sun.syndication.feed.module;
018:
019: import com.sun.syndication.feed.CopyFrom;
020:
021: import java.util.List;
022: import java.util.Date;
023:
024: /**
025: * Dublin Core Module.
026: * <p>
027: * @see <a href="http://web.resource.org/rss/1.0/modules/dc/">Dublin Core module</a>.
028: * @author Alejandro Abdelnur
029: *
030: */
031: public interface DCModule extends Module, CopyFrom {
032:
033: /**
034: * URI of the Dublin Core Module (http://purl.org/dc/elements/1.1/).
035: *
036: */
037: String URI = "http://purl.org/dc/elements/1.1/";
038:
039: /**
040: * Returns the DublinCore module titles.
041: * <p>
042: * @return a list of Strings representing the DublinCore module title,
043: * an empty list if none.
044: *
045: */
046: List getTitles();
047:
048: /**
049: * Sets the DublinCore module titles.
050: * <p>
051: * @param titles the list of String representing the DublinCore module titles
052: * to set, an empty list or <b>null</b> if none.
053: *
054: */
055: void setTitles(List titles);
056:
057: /**
058: * Gets the DublinCore module title. Convenience method that can be used
059: * to obtain the first item, <b>null</b> if none.
060: * <p>
061: * @return the first DublinCore module title, <b>null</b> if none.
062: */
063: String getTitle();
064:
065: /**
066: * Sets the DublinCore module title. Convenience method that can be used
067: * when there is only one title to set.
068: * <p>
069: * @param title the DublinCore module title to set, <b>null</b> if none.
070: *
071: */
072: void setTitle(String title);
073:
074: /**
075: * Returns the DublinCore module creator.
076: * <p>
077: * @return a list of Strings representing the DublinCore module creator,
078: * an empty list if none.
079: *
080: */
081: List getCreators();
082:
083: /**
084: * Sets the DublinCore module creators.
085: * <p>
086: * @param creators the list of String representing the DublinCore module
087: * creators to set, an empty list or <b>null</b> if none.
088: *
089: */
090: void setCreators(List creators);
091:
092: /**
093: * Gets the DublinCore module creator. Convenience method that can be used
094: * to obtain the first item, <b>null</b> if none.
095: * <p>
096: * @return the first DublinCore module creator, <b>null</b> if none.
097: */
098: String getCreator();
099:
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: }
|