1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.opencastproject.oaipmh.server;
22
23 import static org.apache.commons.lang3.StringUtils.trimToNull;
24
25 import org.opencastproject.oaipmh.OaiPmhConstants;
26
27 import java.util.Optional;
28
29
30
31
32 public abstract class Params {
33
34
35
36
37
38 abstract String getParameter(String key);
39
40
41
42
43
44 abstract String getRepositoryUrl();
45
46 boolean isVerbGetRecord() {
47 return getVerb().map(s -> OaiPmhConstants.VERB_GET_RECORD.equals(s)).orElse(false);
48 }
49
50 boolean isVerbIdentify() {
51 return getVerb().map(s -> OaiPmhConstants.VERB_IDENTIFY.equals(s)).orElse(false);
52 }
53
54 boolean isVerbListMetadataFormats() {
55 return getVerb().map(s -> OaiPmhConstants.VERB_LIST_METADATA_FORMATS.equals(s)).orElse(false);
56 }
57
58 boolean isVerbListSets() {
59 return getVerb().map(s -> OaiPmhConstants.VERB_LIST_SETS.equals(s)).orElse(false);
60 }
61
62 boolean isVerbListIdentifiers() {
63 return getVerb().map(s -> OaiPmhConstants.VERB_LIST_IDENTIFIERS.equals(s)).orElse(false);
64 }
65
66 boolean isVerbListRecords() {
67 return getVerb().map(s -> OaiPmhConstants.VERB_LIST_RECORDS.equals(s)).orElse(false);
68 }
69
70 Optional<String> getVerb() {
71 return Optional.ofNullable(trimToNull(getParameter("verb")));
72 }
73
74 Optional<String> getIdentifier() {
75 return Optional.ofNullable(trimToNull(getParameter("identifier")));
76 }
77
78 Optional<String> getMetadataPrefix() {
79 return Optional.ofNullable(trimToNull(getParameter("metadataPrefix")));
80 }
81
82 Optional<String> getFrom() {
83 return Optional.ofNullable(trimToNull(getParameter("from")));
84 }
85
86 Optional<String> getUntil() {
87 return Optional.ofNullable(trimToNull(getParameter("until")));
88 }
89
90 Optional<String> getSet() {
91 return Optional.ofNullable(trimToNull(getParameter("set")));
92 }
93
94 Optional<String> getResumptionToken() {
95 return Optional.ofNullable(trimToNull(getParameter("resumptionToken")));
96 }
97
98 @Override
99 public String toString() {
100 final StringBuilder sb = new StringBuilder();
101 sb.append("Params");
102 sb.append("{verb=");
103 sb.append(getVerb());
104 sb.append("}");
105 return sb.toString();
106 }
107 }