Class AbstractMetadataFieldMapping<RecordType>
- java.lang.Object
-
- org.dspace.importer.external.metadatamapping.AbstractMetadataFieldMapping<RecordType>
-
- All Implemented Interfaces:
MetadataFieldMapping<RecordType,MetadataContributor<RecordType>>
- Direct Known Subclasses:
PubmedFieldMapping
public abstract class AbstractMetadataFieldMapping<RecordType> extends Object implements MetadataFieldMapping<RecordType,MetadataContributor<RecordType>>
Abstract class that implementsMetadataFieldMappingThis class adds a default implementation for the MetadataFieldMapping methods- Author:
- Roeland Dillen (roeland at atmire dot com)
-
-
Constructor Summary
Constructors Constructor Description AbstractMetadataFieldMapping()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map<MetadataFieldConfig,MetadataContributor<RecordType>>getMetadataFieldMap()Retrieve the metadataFieldMap set to this classMetadataProcessorServicegetMetadataProcessor(MetadataFieldConfig metadataField)Return the metadataProcessor used to update values to make them more compliant for certain goalsCollection<MetadatumDTO>resultToDCValueMapping(RecordType record)Loop over the MetadataContributors and return their concatenated retrieved metadatumDTO objectsvoidsetMetadataFieldMap(Map<MetadataFieldConfig,MetadataContributor<RecordType>> metadataFieldMap)Defines which metadatum is mapped on which metadatum.voidsetMetadataProcessorMap(Map<MetadataFieldConfig,MetadataProcessorService> metadataProcessorMap)Set a map of metadataprocessors.MetadatumDTOtoDCValue(MetadataFieldConfig field, String value)
-
-
-
Method Detail
-
setMetadataProcessorMap
public void setMetadataProcessorMap(Map<MetadataFieldConfig,MetadataProcessorService> metadataProcessorMap)
Set a map of metadataprocessors. This map is used to process metadata to make it more compliant for certain metadata fields- Parameters:
metadataProcessorMap- the new map.
-
getMetadataProcessor
public MetadataProcessorService getMetadataProcessor(MetadataFieldConfig metadataField)
Return the metadataProcessor used to update values to make them more compliant for certain goals- Parameters:
metadataField- to retrieve processor for- Returns:
- metadataProcessor
-
toDCValue
public MetadatumDTO toDCValue(MetadataFieldConfig field, String value)
- Specified by:
toDCValuein interfaceMetadataFieldMapping<RecordType,MetadataContributor<RecordType>>- Parameters:
field- MetadataFieldConfig representing what to map the value tovalue- The value to map to a MetadatumDTO- Returns:
- A metadatumDTO created from the field and value
-
getMetadataFieldMap
public Map<MetadataFieldConfig,MetadataContributor<RecordType>> getMetadataFieldMap()
Retrieve the metadataFieldMap set to this class- Returns:
- a map representing the metadataFieldMap
-
setMetadataFieldMap
public void setMetadataFieldMap(Map<MetadataFieldConfig,MetadataContributor<RecordType>> metadataFieldMap)
Defines which metadatum is mapped on which metadatum. Note that while the key must be unique it only matters here for postprocessing of the value. The mapped MetadatumContributor has full control over what metadatafield is generated.- Parameters:
metadataFieldMap- The map containing the link between retrieve metadata and metadata that will be set to the item.
-
resultToDCValueMapping
public Collection<MetadatumDTO> resultToDCValueMapping(RecordType record)
Loop over the MetadataContributors and return their concatenated retrieved metadatumDTO objects- Specified by:
resultToDCValueMappingin interfaceMetadataFieldMapping<RecordType,MetadataContributor<RecordType>>- Parameters:
record- Used to retrieve the MetadatumDTO- Returns:
- Lit of metadatumDTO
-
-