Package org.dspace.app.sfx.service
Interface SFXFileReaderService
- All Known Implementing Classes:
SFXFileReaderServiceImpl
public interface SFXFileReaderService
XML configuration file reader for DSpace metadata fields (DC) mapping
to OpenURL parameters.
This class reads the [dspace]/config/sfx.xml configuration file, which contains pairs of DSpace item metadata values and OpenURL parameter names. Then it takes an item and constructs an OpenURL for it with values of parameters filled in from the paired metadata fields.
- Version:
- $Revision$
- Author:
- Stuart Lewis, Graham Triggs
-
Method Summary
Modifier and TypeMethodDescriptionProcess the item, mapping each of its metadata fields defined in the configuration file to an OpenURL parametergetAttribute(Node e, String name) Returns the value of the node's attribute named<name>getElement(Node node) Returns element nodeReturns the value found in the Text node (if any) in the node list that's passed in.booleanisEmptyTextNode(Node nd) Is Empty text Node *loadSFXFile(String fileName, Item item) Loads the SFX configuration fileParses XML file and returns XML document.
-
Method Details
-
loadSFXFile
Loads the SFX configuration file- Parameters:
fileName- The name of the SFX configuration fileitem- The item to process, from which metadata values will be taken- Returns:
- the SFX string
- Throws:
IOException- if IO error
-
parseFile
Parses XML file and returns XML document.- Parameters:
fileName- XML file to parse- Returns:
- XML document or null if error occurred. The error is caught and logged.
-
doNodes
Process the item, mapping each of its metadata fields defined in the configuration file to an OpenURL parameter- Parameters:
node- DOM node of the mapping pair in the XML file (field element)item- The item to process, from which metadata values will be taken- Returns:
- processed fields.
- Throws:
IOException- if IO error
-
getElement
Returns element node- Parameters:
node- element (it is XML tag)- Returns:
- Element node otherwise null
-
isEmptyTextNode
Is Empty text Node *- Parameters:
nd- node- Returns:
- true or false
-
getAttribute
Returns the value of the node's attribute named<name>- Parameters:
e- nodename- name- Returns:
- value
-
getValue
Returns the value found in the Text node (if any) in the node list that's passed in.- Parameters:
node- node- Returns:
- value
-