Revision 49676
Added by Sandro La Bruzzo over 6 years ago
AbstractPIDResolver.java | ||
---|---|---|
29 | 29 |
protected String name; |
30 | 30 |
protected int order; |
31 | 31 |
|
32 |
protected boolean availableOffline; |
|
33 |
|
|
32 | 34 |
@Autowired |
33 | 35 |
private ResolverStore storeManager; |
34 | 36 |
|
... | ... | |
45 | 47 |
|
46 | 48 |
// public abstract void setDatasourceProvenance(final ObjectProvenance provenance, final String namespacePrefix); |
47 | 49 |
|
48 |
public ResolvedObject retrievePID(final String pid, final String pidType) { |
|
49 |
|
|
50 |
public ResolvedObject retrievePID(final String pid, final String pidType, boolean offline) { |
|
51 |
if (offline && !isAvailableOffline()) |
|
52 |
return null; |
|
50 | 53 |
if (!canResolvePid(pidType)) return null; |
51 | 54 |
final String dnetIdentifier = storeManager.generateDNetIdentifier(pid, pidType); |
52 | 55 |
final Element item = cache.get(dnetIdentifier); |
... | ... | |
70 | 73 |
return null; |
71 | 74 |
} |
72 | 75 |
|
73 |
public String retrieveDnetID(final String pid, final String pidType) { |
|
74 |
|
|
76 |
public String retrieveDnetID(final String pid, final String pidType, boolean offline) { |
|
77 |
if (offline && !isAvailableOffline()) |
|
78 |
return null; |
|
75 | 79 |
if (!canResolvePid(pidType)) return null; |
76 | 80 |
final String dnetIdentifier = storeManager.generateDNetIdentifier(pid, pidType); |
77 | 81 |
final Element item = cache.get(dnetIdentifier); |
... | ... | |
153 | 157 |
public int compareTo(PIDResolver o) { |
154 | 158 |
return Integer.compare(getOrder(), o.getOrder()); |
155 | 159 |
} |
160 |
|
|
161 |
|
|
162 |
public boolean isAvailableOffline() { |
|
163 |
return availableOffline; |
|
164 |
} |
|
165 |
|
|
166 |
@Required |
|
167 |
public AbstractPIDResolver setAvailableOffline(boolean availableOffline) { |
|
168 |
this.availableOffline = availableOffline; |
|
169 |
return this; |
|
170 |
} |
|
156 | 171 |
} |
Also available in: Unified diff
Changed Crossref to use dump on mongoDB