1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.opencastproject.schema;
23
24 import static org.opencastproject.util.data.Option.error;
25 import static org.opencastproject.util.data.Option.none;
26 import static org.opencastproject.util.data.Option.some;
27
28 import org.opencastproject.util.data.Function0;
29 import org.opencastproject.util.data.Option;
30
31 import java.util.Date;
32
33
34 public class OcDublinCoreBuilder implements OcDublinCore {
35 protected Option<String> abstrakt = none();
36 protected Option<String> accessRights = none();
37 protected Option<String> accrualMethod = none();
38 protected Option<String> accrualPeriodicity = none();
39 protected Option<String> accrualPolicy = none();
40 protected Option<String> alternative = none();
41 protected Option<String> audience = none();
42 protected Option<String> available = none();
43 protected Option<String> bibliographicCitation = none();
44 protected Option<String> conformsTo = none();
45 protected Option<String> contributor = none();
46 protected Option<String> coverage = none();
47 protected Option<Date> created = none();
48 protected Option<String> creator = none();
49 protected Option<Date> date = none();
50 protected Option<Date> dateAccepted = none();
51 protected Option<Date> dateCopyrighted = none();
52 protected Option<Date> dateSubmitted = none();
53 protected Option<String> description = none();
54 protected Option<String> educationLevel = none();
55 protected Option<Long> extent = none();
56 protected Option<String> format = none();
57 protected Option<String> hasFormat = none();
58 protected Option<String> hasPart = none();
59 protected Option<String> hasVersion = none();
60 protected Option<String> identifier = none();
61 protected Option<String> instructionalMethod = none();
62 protected Option<String> isFormatOf = none();
63 protected Option<String> isPartOf = none();
64 protected Option<String> isReferencedBy = none();
65 protected Option<String> isReplacedBy = none();
66 protected Option<String> isRequiredBy = none();
67 protected Option<String> issued = none();
68 protected Option<String> isVersionOf = none();
69 protected Option<String> language = none();
70 protected Option<String> license = none();
71 protected Option<String> mediator = none();
72 protected Option<String> medium = none();
73 protected Option<String> modified = none();
74 protected Option<String> provenance = none();
75 protected Option<String> publisher = none();
76 protected Option<String> references = none();
77 protected Option<String> relation = none();
78 protected Option<String> replaces = none();
79 protected Option<String> requires = none();
80 protected Option<String> rights = none();
81 protected Option<String> rightsHolder = none();
82 protected Option<String> source = none();
83 protected Option<String> spatial = none();
84 protected Option<String> subject = none();
85 protected Option<String> tableOfContents = none();
86 protected Option<String> temporal = none();
87 protected Option<String> title = none();
88 protected Option<String> type = none();
89 protected Option<String> valid = none();
90
91 public static OcDublinCoreBuilder create(final OcDublinCore source) {
92
93 final OcDublinCoreBuilder target = new OcDublinCoreBuilder();
94 target.abstrakt = source.getAbstract();
95 target.accessRights = source.getAccessRights();
96 target.accrualMethod = source.getAccrualMethod();
97 target.accrualPeriodicity = source.getAccrualPeriodicity();
98 target.accrualPolicy = source.getAccrualPolicy();
99 target.alternative = source.getAlternative();
100 target.audience = source.getAudience();
101 target.available = source.getAvailable();
102 target.bibliographicCitation = source.getBibliographicCitation();
103 target.conformsTo = source.getConformsTo();
104 target.contributor = source.getContributor();
105 target.coverage = source.getCoverage();
106 target.created = some(source.getCreated());
107 target.creator = source.getCreator();
108 target.date = source.getDate();
109 target.dateAccepted = source.getDateAccepted();
110 target.dateCopyrighted = source.getDateCopyrighted();
111 target.dateSubmitted = source.getDateSubmitted();
112 target.description = source.getDescription();
113 target.educationLevel = source.getEducationLevel();
114 target.extent = source.getExtent();
115 target.format = source.getFormat();
116 target.hasFormat = source.getHasFormat();
117 target.hasPart = source.getHasPart();
118 target.hasVersion = source.getHasVersion();
119 target.identifier = source.getIdentifier();
120 target.instructionalMethod = source.getInstructionalMethod();
121 target.isFormatOf = source.getIsFormatOf();
122 target.isPartOf = source.getIsPartOf();
123 target.isReferencedBy = source.getIsReferencedBy();
124 target.isReplacedBy = source.getIsReplacedBy();
125 target.isRequiredBy = source.getIsRequiredBy();
126 target.issued = source.getIssued();
127 target.isVersionOf = source.getIsVersionOf();
128 target.language = source.getLanguage();
129 target.license = source.getLicense();
130 target.mediator = source.getMediator();
131 target.medium = source.getMedium();
132 target.modified = source.getModified();
133 target.provenance = source.getProvenance();
134 target.publisher = source.getPublisher();
135 target.references = source.getReferences();
136 target.relation = source.getRelation();
137 target.replaces = source.getReplaces();
138 target.requires = source.getRequires();
139 target.rights = source.getRights();
140 target.rightsHolder = source.getRightsHolder();
141 target.source = source.getSource();
142 target.spatial = source.getSpatial();
143 target.subject = source.getSubject();
144 target.tableOfContents = source.getTableOfContents();
145 target.temporal = source.getTemporal();
146 target.title = some(source.getTitle());
147 target.type = source.getType();
148 target.valid = source.getValid();
149 return target;
150 }
151
152 public OcDublinCoreBuilder setAbstract(Option<String> a) {
153 this.abstrakt = a;
154 return this;
155 }
156
157 public OcDublinCoreBuilder setAccessRights(Option<String> a) {
158 this.accessRights = a;
159 return this;
160 }
161
162 public OcDublinCoreBuilder setAccrualMethod(Option<String> a) {
163 this.accrualMethod = a;
164 return this;
165 }
166
167 public OcDublinCoreBuilder setAccrualPeriodicity(Option<String> a) {
168 this.accrualPeriodicity = a;
169 return this;
170 }
171
172 public OcDublinCoreBuilder setAccrualPolicy(Option<String> a) {
173 this.accrualPolicy = a;
174 return this;
175 }
176
177 public OcDublinCoreBuilder setAlternative(Option<String> a) {
178 this.alternative = a;
179 return this;
180 }
181
182 public OcDublinCoreBuilder setAudience(Option<String> a) {
183 this.audience = a;
184 return this;
185 }
186
187 public OcDublinCoreBuilder setAvailable(Option<String> a) {
188 this.available = a;
189 return this;
190 }
191
192 public OcDublinCoreBuilder setBibliographicCitation(Option<String> a) {
193 this.bibliographicCitation = a;
194 return this;
195 }
196
197 public OcDublinCoreBuilder setConformsTo(Option<String> a) {
198 this.conformsTo = a;
199 return this;
200 }
201
202 public OcDublinCoreBuilder setContributor(Option<String> a) {
203 this.contributor = a;
204 return this;
205 }
206
207 public OcDublinCoreBuilder setCoverage(Option<String> a) {
208 this.coverage = a;
209 return this;
210 }
211
212 public OcDublinCoreBuilder setCreated(Option<Date> a) {
213 this.created = a;
214 return this;
215 }
216
217 public OcDublinCoreBuilder setCreator(Option<String> a) {
218 this.creator = a;
219 return this;
220 }
221
222 public OcDublinCoreBuilder setDate(Option<Date> a) {
223 this.date = a;
224 return this;
225 }
226
227 public OcDublinCoreBuilder setDateAccepted(Option<Date> a) {
228 this.dateAccepted = a;
229 return this;
230 }
231
232 public OcDublinCoreBuilder setDateCopyrighted(Option<Date> a) {
233 this.dateCopyrighted = a;
234 return this;
235 }
236
237 public OcDublinCoreBuilder setDateSubmitted(Option<Date> a) {
238 this.dateSubmitted = a;
239 return this;
240 }
241
242 public OcDublinCoreBuilder setDescription(Option<String> a) {
243 this.description = a;
244 return this;
245 }
246
247 public OcDublinCoreBuilder setEducationLevel(Option<String> a) {
248 this.educationLevel = a;
249 return this;
250 }
251
252 public OcDublinCoreBuilder setExtent(Option<Long> a) {
253 this.extent = a;
254 return this;
255 }
256
257 public OcDublinCoreBuilder setFormat(Option<String> a) {
258 this.format = a;
259 return this;
260 }
261
262 public OcDublinCoreBuilder setHasFormat(Option<String> a) {
263 this.hasFormat = a;
264 return this;
265 }
266
267 public OcDublinCoreBuilder setHasPart(Option<String> a) {
268 this.hasPart = a;
269 return this;
270 }
271
272 public OcDublinCoreBuilder setHasVersion(Option<String> a) {
273 this.hasVersion = a;
274 return this;
275 }
276
277 public OcDublinCoreBuilder setIdentifier(Option<String> a) {
278 this.identifier = a;
279 return this;
280 }
281
282 public OcDublinCoreBuilder setInstructionalMethod(Option<String> a) {
283 this.instructionalMethod = a;
284 return this;
285 }
286
287 public OcDublinCoreBuilder setIsFormatOf(Option<String> a) {
288 this.isFormatOf = a;
289 return this;
290 }
291
292 public OcDublinCoreBuilder setIsPartOf(Option<String> a) {
293 this.isPartOf = a;
294 return this;
295 }
296
297 public OcDublinCoreBuilder setIsReferencedBy(Option<String> a) {
298 this.isReferencedBy = a;
299 return this;
300 }
301
302 public OcDublinCoreBuilder setIsReplacedBy(Option<String> a) {
303 this.isReplacedBy = a;
304 return this;
305 }
306
307 public OcDublinCoreBuilder setIsRequiredBy(Option<String> a) {
308 this.isRequiredBy = a;
309 return this;
310 }
311
312 public OcDublinCoreBuilder setIssued(Option<String> a) {
313 this.issued = a;
314 return this;
315 }
316
317 public OcDublinCoreBuilder setIsVersionOf(Option<String> a) {
318 this.isVersionOf = a;
319 return this;
320 }
321
322 public OcDublinCoreBuilder setLanguage(Option<String> a) {
323 this.language = a;
324 return this;
325 }
326
327 public OcDublinCoreBuilder setLicense(Option<String> a) {
328 this.license = a;
329 return this;
330 }
331
332 public OcDublinCoreBuilder setMediator(Option<String> a) {
333 this.mediator = a;
334 return this;
335 }
336
337 public OcDublinCoreBuilder setMedium(Option<String> a) {
338 this.medium = a;
339 return this;
340 }
341
342 public OcDublinCoreBuilder setModified(Option<String> a) {
343 this.modified = a;
344 return this;
345 }
346
347 public OcDublinCoreBuilder setProvenance(Option<String> a) {
348 this.provenance = a;
349 return this;
350 }
351
352 public OcDublinCoreBuilder setPublisher(Option<String> a) {
353 this.publisher = a;
354 return this;
355 }
356
357 public OcDublinCoreBuilder setReferences(Option<String> a) {
358 this.references = a;
359 return this;
360 }
361
362 public OcDublinCoreBuilder setRelation(Option<String> a) {
363 this.relation = a;
364 return this;
365 }
366
367 public OcDublinCoreBuilder setReplaces(Option<String> a) {
368 this.replaces = a;
369 return this;
370 }
371
372 public OcDublinCoreBuilder setRequires(Option<String> a) {
373 this.requires = a;
374 return this;
375 }
376
377 public OcDublinCoreBuilder setRights(Option<String> a) {
378 this.rights = a;
379 return this;
380 }
381
382 public OcDublinCoreBuilder setRightsHolder(Option<String> a) {
383 this.rightsHolder = a;
384 return this;
385 }
386
387 public OcDublinCoreBuilder setSource(Option<String> a) {
388 this.source = a;
389 return this;
390 }
391
392 public OcDublinCoreBuilder setSpatial(Option<String> a) {
393 this.spatial = a;
394 return this;
395 }
396
397 public OcDublinCoreBuilder setSubject(Option<String> a) {
398 this.subject = a;
399 return this;
400 }
401
402 public OcDublinCoreBuilder setTableOfContents(Option<String> a) {
403 this.tableOfContents = a;
404 return this;
405 }
406
407 public OcDublinCoreBuilder setTemporal(Option<String> a) {
408 this.temporal = a;
409 return this;
410 }
411
412 public OcDublinCoreBuilder setTitle(Option<String> a) {
413 this.title = a;
414 return this;
415 }
416
417 public OcDublinCoreBuilder setType(Option<String> a) {
418 this.type = a;
419 return this;
420 }
421
422 public OcDublinCoreBuilder setValid(Option<String> a) {
423 this.valid = a;
424 return this;
425 }
426
427 public OcDublinCoreBuilder setAbstract(String a) {
428 this.abstrakt = some(a);
429 return this;
430 }
431
432 public OcDublinCoreBuilder setAccessRights(String a) {
433 this.accessRights = some(a);
434 return this;
435 }
436
437 public OcDublinCoreBuilder setAccrualMethod(String a) {
438 this.accrualMethod = some(a);
439 return this;
440 }
441
442 public OcDublinCoreBuilder setAccrualPeriodicity(String a) {
443 this.accrualPeriodicity = some(a);
444 return this;
445 }
446
447 public OcDublinCoreBuilder setAccrualPolicy(String a) {
448 this.accrualPolicy = some(a);
449 return this;
450 }
451
452 public OcDublinCoreBuilder setAlternative(String a) {
453 this.alternative = some(a);
454 return this;
455 }
456
457 public OcDublinCoreBuilder setAudience(String a) {
458 this.audience = some(a);
459 return this;
460 }
461
462 public OcDublinCoreBuilder setAvailable(String a) {
463 this.available = some(a);
464 return this;
465 }
466
467 public OcDublinCoreBuilder setBibliographicCitation(String a) {
468 this.bibliographicCitation = some(a);
469 return this;
470 }
471
472 public OcDublinCoreBuilder setConformsTo(String a) {
473 this.conformsTo = some(a);
474 return this;
475 }
476
477 public OcDublinCoreBuilder setContributor(String a) {
478 this.contributor = some(a);
479 return this;
480 }
481
482 public OcDublinCoreBuilder setCoverage(String a) {
483 this.coverage = some(a);
484 return this;
485 }
486
487 public OcDublinCoreBuilder setCreated(Date a) {
488 this.created = some(a);
489 return this;
490 }
491
492 public OcDublinCoreBuilder setCreator(String a) {
493 this.creator = some(a);
494 return this;
495 }
496
497 public OcDublinCoreBuilder setDate(Date a) {
498 this.date = some(a);
499 return this;
500 }
501
502 public OcDublinCoreBuilder setDateAccepted(Date a) {
503 this.dateAccepted = some(a);
504 return this;
505 }
506
507 public OcDublinCoreBuilder setDateCopyrighted(Date a) {
508 this.dateCopyrighted = some(a);
509 return this;
510 }
511
512 public OcDublinCoreBuilder setDateSubmitted(Date a) {
513 this.dateSubmitted = some(a);
514 return this;
515 }
516
517 public OcDublinCoreBuilder setDescription(String a) {
518 this.description = some(a);
519 return this;
520 }
521
522 public OcDublinCoreBuilder setEducationLevel(String a) {
523 this.educationLevel = some(a);
524 return this;
525 }
526
527 public OcDublinCoreBuilder setExtent(Long a) {
528 this.extent = some(a);
529 return this;
530 }
531
532 public OcDublinCoreBuilder setFormat(String a) {
533 this.format = some(a);
534 return this;
535 }
536
537 public OcDublinCoreBuilder setHasFormat(String a) {
538 this.hasFormat = some(a);
539 return this;
540 }
541
542 public OcDublinCoreBuilder setHasPart(String a) {
543 this.hasPart = some(a);
544 return this;
545 }
546
547 public OcDublinCoreBuilder setHasVersion(String a) {
548 this.hasVersion = some(a);
549 return this;
550 }
551
552 public OcDublinCoreBuilder setIdentifier(String a) {
553 this.identifier = some(a);
554 return this;
555 }
556
557 public OcDublinCoreBuilder setInstructionalMethod(String a) {
558 this.instructionalMethod = some(a);
559 return this;
560 }
561
562 public OcDublinCoreBuilder setIsFormatOf(String a) {
563 this.isFormatOf = some(a);
564 return this;
565 }
566
567 public OcDublinCoreBuilder setIsPartOf(String a) {
568 this.isPartOf = some(a);
569 return this;
570 }
571
572 public OcDublinCoreBuilder setIsReferencedBy(String a) {
573 this.isReferencedBy = some(a);
574 return this;
575 }
576
577 public OcDublinCoreBuilder setIsReplacedBy(String a) {
578 this.isReplacedBy = some(a);
579 return this;
580 }
581
582 public OcDublinCoreBuilder setIsRequiredBy(String a) {
583 this.isRequiredBy = some(a);
584 return this;
585 }
586
587 public OcDublinCoreBuilder setIssued(String a) {
588 this.issued = some(a);
589 return this;
590 }
591
592 public OcDublinCoreBuilder setIsVersionOf(String a) {
593 this.isVersionOf = some(a);
594 return this;
595 }
596
597 public OcDublinCoreBuilder setLanguage(String a) {
598 this.language = some(a);
599 return this;
600 }
601
602 public OcDublinCoreBuilder setLicense(String a) {
603 this.license = some(a);
604 return this;
605 }
606
607 public OcDublinCoreBuilder setMediator(String a) {
608 this.mediator = some(a);
609 return this;
610 }
611
612 public OcDublinCoreBuilder setMedium(String a) {
613 this.medium = some(a);
614 return this;
615 }
616
617 public OcDublinCoreBuilder setModified(String a) {
618 this.modified = some(a);
619 return this;
620 }
621
622 public OcDublinCoreBuilder setProvenance(String a) {
623 this.provenance = some(a);
624 return this;
625 }
626
627 public OcDublinCoreBuilder setPublisher(String a) {
628 this.publisher = some(a);
629 return this;
630 }
631
632 public OcDublinCoreBuilder setReferences(String a) {
633 this.references = some(a);
634 return this;
635 }
636
637 public OcDublinCoreBuilder setRelation(String a) {
638 this.relation = some(a);
639 return this;
640 }
641
642 public OcDublinCoreBuilder setReplaces(String a) {
643 this.replaces = some(a);
644 return this;
645 }
646
647 public OcDublinCoreBuilder setRequires(String a) {
648 this.requires = some(a);
649 return this;
650 }
651
652 public OcDublinCoreBuilder setRights(String a) {
653 this.rights = some(a);
654 return this;
655 }
656
657 public OcDublinCoreBuilder setRightsHolder(String a) {
658 this.rightsHolder = some(a);
659 return this;
660 }
661
662 public OcDublinCoreBuilder setSource(String a) {
663 this.source = some(a);
664 return this;
665 }
666
667 public OcDublinCoreBuilder setSpatial(String a) {
668 this.spatial = some(a);
669 return this;
670 }
671
672 public OcDublinCoreBuilder setSubject(String a) {
673 this.subject = some(a);
674 return this;
675 }
676
677 public OcDublinCoreBuilder setTableOfContents(String a) {
678 this.tableOfContents = some(a);
679 return this;
680 }
681
682 public OcDublinCoreBuilder setTemporal(String a) {
683 this.temporal = some(a);
684 return this;
685 }
686
687 public OcDublinCoreBuilder setTitle(String a) {
688 this.title = some(a);
689 return this;
690 }
691
692 public OcDublinCoreBuilder setType(String a) {
693 this.type = some(a);
694 return this;
695 }
696
697 public OcDublinCoreBuilder setValid(String a) {
698 this.valid = some(a);
699 return this;
700 }
701
702 @Override public Option<String> getAbstract() {
703 return abstrakt;
704 }
705
706 @Override public Option<String> getAccessRights() {
707 return accessRights;
708 }
709
710 @Override public Option<String> getAccrualMethod() {
711 return accrualMethod;
712 }
713
714 @Override public Option<String> getAccrualPeriodicity() {
715 return accrualPeriodicity;
716 }
717
718 @Override public Option<String> getAccrualPolicy() {
719 return accrualPolicy;
720 }
721
722 @Override public Option<String> getAlternative() {
723 return alternative;
724 }
725
726 @Override public Option<String> getAudience() {
727 return audience;
728 }
729
730 @Override public Option<String> getAvailable() {
731 return available;
732 }
733
734 @Override public Option<String> getBibliographicCitation() {
735 return bibliographicCitation;
736 }
737
738 @Override public Option<String> getConformsTo() {
739 return conformsTo;
740 }
741
742 @Override public Option<String> getContributor() {
743 return contributor;
744 }
745
746 @Override public Option<String> getCoverage() {
747 return coverage;
748 }
749
750 private static final Function0<Date> createdNotSet = error("created not set");
751
752 @Override public Date getCreated() {
753 return created.getOrElse(createdNotSet);
754 }
755
756 @Override public Option<String> getCreator() {
757 return creator;
758 }
759
760 @Override public Option<Date> getDate() {
761 return date;
762 }
763
764 @Override public Option<Date> getDateAccepted() {
765 return dateAccepted;
766 }
767
768 @Override public Option<Date> getDateCopyrighted() {
769 return dateCopyrighted;
770 }
771
772 @Override public Option<Date> getDateSubmitted() {
773 return dateSubmitted;
774 }
775
776 @Override public Option<String> getDescription() {
777 return description;
778 }
779
780 @Override public Option<String> getEducationLevel() {
781 return educationLevel;
782 }
783
784 @Override public Option<Long> getExtent() {
785 return extent;
786 }
787
788 @Override public Option<String> getFormat() {
789 return format;
790 }
791
792 @Override public Option<String> getHasFormat() {
793 return hasFormat;
794 }
795
796 @Override public Option<String> getHasPart() {
797 return hasPart;
798 }
799
800 @Override public Option<String> getHasVersion() {
801 return hasVersion;
802 }
803
804 @Override public Option<String> getIdentifier() {
805 return identifier;
806 }
807
808 @Override public Option<String> getInstructionalMethod() {
809 return instructionalMethod;
810 }
811
812 @Override public Option<String> getIsFormatOf() {
813 return isFormatOf;
814 }
815
816 @Override public Option<String> getIsPartOf() {
817 return isPartOf;
818 }
819
820 @Override public Option<String> getIsReferencedBy() {
821 return isReferencedBy;
822 }
823
824 @Override public Option<String> getIsReplacedBy() {
825 return isReplacedBy;
826 }
827
828 @Override public Option<String> getIsRequiredBy() {
829 return isRequiredBy;
830 }
831
832 @Override public Option<String> getIssued() {
833 return issued;
834 }
835
836 @Override public Option<String> getIsVersionOf() {
837 return isVersionOf;
838 }
839
840 @Override public Option<String> getLanguage() {
841 return language;
842 }
843
844 @Override public Option<String> getLicense() {
845 return license;
846 }
847
848 @Override public Option<String> getMediator() {
849 return mediator;
850 }
851
852 @Override public Option<String> getMedium() {
853 return medium;
854 }
855
856 @Override public Option<String> getModified() {
857 return modified;
858 }
859
860 @Override public Option<String> getProvenance() {
861 return provenance;
862 }
863
864 @Override public Option<String> getPublisher() {
865 return publisher;
866 }
867
868 @Override public Option<String> getReferences() {
869 return references;
870 }
871
872 @Override public Option<String> getRelation() {
873 return relation;
874 }
875
876 @Override public Option<String> getReplaces() {
877 return replaces;
878 }
879
880 @Override public Option<String> getRequires() {
881 return requires;
882 }
883
884 @Override public Option<String> getRights() {
885 return rights;
886 }
887
888 @Override public Option<String> getRightsHolder() {
889 return rightsHolder;
890 }
891
892 @Override public Option<String> getSource() {
893 return source;
894 }
895
896 @Override public Option<String> getSpatial() {
897 return spatial;
898 }
899
900 @Override public Option<String> getSubject() {
901 return subject;
902 }
903
904 @Override public Option<String> getTableOfContents() {
905 return tableOfContents;
906 }
907
908 @Override public Option<String> getTemporal() {
909 return temporal;
910 }
911
912 private static final Function0<String> titleNotSet = error("title not set");
913
914 @Override public String getTitle() {
915 return title.getOrElse(titleNotSet);
916 }
917
918 @Override public Option<String> getType() {
919 return type;
920 }
921
922 @Override public Option<String> getValid() {
923 return valid;
924 }
925 }