Revision 46345
Added by Alessia Bardi about 7 years ago
OAIConfigurationExistReader.java | ||
---|---|---|
15 | 15 |
import eu.dnetlib.rmi.enabling.ISLookUpException; |
16 | 16 |
import eu.dnetlib.rmi.provision.MDFInfo; |
17 | 17 |
import eu.dnetlib.rmi.provision.OaiPublisherRuntimeException; |
18 |
import eu.dnetlib.utils.MetadataReference; |
|
18 | 19 |
import org.springframework.beans.factory.annotation.Autowired; |
19 | 20 |
|
20 | 21 |
/** |
... | ... | |
107 | 108 |
} |
108 | 109 |
|
109 | 110 |
@Override |
110 |
public List<MDFInfo> getSourceMetadataFormats() {
|
|
111 |
public List<MetadataReference> getSourceMetadataFormats() {
|
|
111 | 112 |
final String query = |
112 | 113 |
"for $x in collection('/db/DRIVER/OAIPublisherConfigurationDSResources/OAIPublisherConfigurationDSResourceType')//CONFIGURATION//METADATAFORMAT " |
113 | 114 |
+ "return concat($x//SOURCE_METADATA_FORMAT/@name/string(), ':-:', $x//SOURCE_METADATA_FORMAT/@layout/string(), ':-:', $x//SOURCE_METADATA_FORMAT/@interpretation/string())"; |
... | ... | |
118 | 119 |
} catch (final ISLookUpException e) { |
119 | 120 |
throw new OaiPublisherRuntimeException(e); |
120 | 121 |
} |
121 |
final Set<MDFInfo> sources = new HashSet<>();
|
|
122 |
final Set<MetadataReference> sources = new HashSet<>();
|
|
122 | 123 |
|
123 | 124 |
res.forEach(src -> { |
124 | 125 |
final String[] splitted = src.split(":-:"); |
125 |
final MDFInfo mdfInfo = new MDFInfo(); |
|
126 |
mdfInfo.setSourceFormatName(splitted[0]); |
|
127 |
mdfInfo.setSourceFormatLayout(splitted[1]); |
|
128 |
mdfInfo.setSourceFormatInterpretation(splitted[2]); |
|
129 |
sources.add(mdfInfo); |
|
126 |
MetadataReference mdref = new MetadataReference(splitted[0],splitted[1],splitted[2] ); |
|
127 |
sources.add(mdref); |
|
130 | 128 |
}); |
131 | 129 |
return sources.stream().collect(Collectors.toList()); |
132 | 130 |
} |
Also available in: Unified diff
refactoring: let's reuse class MetadataReference