Package org.dspace.ctask.general
Class BasicLinkChecker
- java.lang.Object
-
- org.dspace.curate.AbstractCurationTask
-
- org.dspace.ctask.general.BasicLinkChecker
-
- All Implemented Interfaces:
CurationTask
- Direct Known Subclasses:
MetadataValueLinkChecker
public class BasicLinkChecker extends AbstractCurationTask
A basic link checker that is designed to be extended. By default this link checker will check that all links stored in anyschema.anyelement.uri metadata fields return a 20x status code. This link checker can be enhanced by extending this class, and overriding the getURLs and checkURL methods.- Author:
- Stuart Lewis
-
-
Field Summary
-
Fields inherited from class org.dspace.curate.AbstractCurationTask
communityService, configurationService, curator, handleService, itemService, taskId
-
-
Constructor Summary
Constructors Constructor Description BasicLinkChecker()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancheckURL(String url, StringBuilder results)Check the URL and perform appropriate reportingprotected StringgetItemHandle(Item item)Internal utitity method to get a description of the handleprotected intgetResponseStatus(String url)Get the response code for a URL.protected List<String>getURLs(Item item)Get the URLs to checkintperform(DSpaceObject dso)Perform the link checking.-
Methods inherited from class org.dspace.curate.AbstractCurationTask
dereference, distribute, init, perform, performItem, performObject, report, setResult, taskArrayProperty, taskBooleanProperty, taskIntProperty, taskLongProperty, taskProperty
-
-
-
-
Method Detail
-
perform
public int perform(DSpaceObject dso) throws IOException
Perform the link checking.- Specified by:
performin interfaceCurationTask- Specified by:
performin classAbstractCurationTask- Parameters:
dso- The DSpaaceObject to be checked- Returns:
- The curation task status of the checking
- Throws:
IOException- THrown if something went wrong
-
getURLs
protected List<String> getURLs(Item item)
Get the URLs to check- Parameters:
item- The item to extract URLs from- Returns:
- An array of URL Strings
-
checkURL
protected boolean checkURL(String url, StringBuilder results)
Check the URL and perform appropriate reporting- Parameters:
url- The URL to checkresults- Result string with HTTP status codes- Returns:
- If the URL was OK or not
-
getResponseStatus
protected int getResponseStatus(String url)
Get the response code for a URL. If something goes wrong opening the URL, a response code of 0 is returned.- Parameters:
url- The url to open- Returns:
- The HTTP response code (e.g. 200 / 301 / 404 / 500)
-
-