de.pangaea.metadataportal.harvester
Class OAIStaticRepositoryHarvester

java.lang.Object
  extended by de.pangaea.metadataportal.harvester.Harvester
      extended by de.pangaea.metadataportal.harvester.OAIHarvesterBase
          extended by de.pangaea.metadataportal.harvester.OAIStaticRepositoryHarvester

public class OAIStaticRepositoryHarvester
extends OAIHarvesterBase

Harvester for OAI static repositories.

This harvester supports the following additional harvester properties (please look into OAIHarvesterBase for further OAI-specific properties):

Author:
Uwe Schindler

Field Summary
 
Fields inherited from class de.pangaea.metadataportal.harvester.OAIHarvesterBase
DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIME, DEFAULT_TIMEOUT, metadataPrefix, OAI_NS, OAI_STATICREPOSITORY_NS, retryCount, retryTime, sets, timeout
 
Fields inherited from class de.pangaea.metadataportal.harvester.Harvester
fromDateReference, harvestCount, harvestMessageStep, iconfig, index, log
 
Constructor Summary
OAIStaticRepositoryHarvester()
           
 
Method Summary
 void addDocument(MetadataDocument mdoc)
          Adds a document to the Harvester.index working in the background.
 void close(boolean cleanShutdown)
          Closes harvester.
protected  void enumerateValidHarvesterPropertyNames(Set<String> props)
          This method is used by subclasses to enumerate all available harvester properties that are implemented by them.
 void harvest()
          This method is called by the harvester after Harvester.open(de.pangaea.metadataportal.config.SingleIndexConfig)'ing it.
 void open(SingleIndexConfig iconfig)
          Opens harvester for harvesting documents into the index described by the given SingleIndexConfig.
 
Methods inherited from class de.pangaea.metadataportal.harvester.OAIHarvesterBase
createMetadataDocumentInstance, doParse, getEntityResolver, getInputSource, getMetadataDocumentFactory, reset
 
Methods inherited from class de.pangaea.metadataportal.harvester.Harvester
getValidHarvesterPropertyNames, isClosed, isDocumentOutdated, isDocumentOutdated, main, runHarvester, runHarvester, setHarvestingDateReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OAIStaticRepositoryHarvester

public OAIStaticRepositoryHarvester()
Method Detail

open

public void open(SingleIndexConfig iconfig)
          throws Exception
Description copied from class: Harvester
Opens harvester for harvesting documents into the index described by the given SingleIndexConfig. Opens Harvester.index for usage in Harvester.harvest() method.

Overrides:
open in class OAIHarvesterBase
Throws:
Exception - if an exception occurs during opening (various types of exceptions can be thrown).

addDocument

public void addDocument(MetadataDocument mdoc)
                 throws IndexBuilderBackgroundFailure,
                        InterruptedException
Description copied from class: Harvester
Adds a document to the Harvester.index working in the background.

Overrides:
addDocument in class OAIHarvesterBase
Throws:
IndexBuilderBackgroundFailure - if an error occurred in background thread. Exceptions can be thrown asynchronous and may not affect the currect document. The real exception is thrown again in Harvester.close(boolean).
InterruptedException - if wait operation was interrupted.

close

public void close(boolean cleanShutdown)
           throws Exception
Description copied from class: Harvester
Closes harvester. All ressources are freed and the Harvester.index is closed.

Overrides:
close in class OAIHarvesterBase
Parameters:
cleanShutdown - enables writing of status information to the index for the next harvesting. If an error occured during harvesting this should not be done.
Throws:
Exception - if an exception occurs during closing (various types of exceptions can be thrown). Exceptions can be thrown asynchronous and may not affect the currect document.

harvest

public void harvest()
             throws Exception
Description copied from class: Harvester
This method is called by the harvester after Harvester.open(de.pangaea.metadataportal.config.SingleIndexConfig)'ing it. Overwrite this method in your harvester class. This method should harvest files from somewhere, generate MetadataDocuments and add them with Harvester.addDocument(de.pangaea.metadataportal.harvester.MetadataDocument).

Specified by:
harvest in class Harvester
Throws:
Exception - of any type.

enumerateValidHarvesterPropertyNames

protected void enumerateValidHarvesterPropertyNames(Set<String> props)
Description copied from class: Harvester
This method is used by subclasses to enumerate all available harvester properties that are implemented by them. Overwrite this method in your own implementation and append all harvester names to the supplied Set. The public API for client code requesting property names is Harvester.getValidHarvesterPropertyNames().

Overrides:
enumerateValidHarvesterPropertyNames in class OAIHarvesterBase
See Also:
Harvester.getValidHarvesterPropertyNames()


Copyright ©2007-2011 panFMP Developers c/o Uwe Schindler