Class RegisterDOI

java.lang.Object
org.dspace.curate.AbstractCurationTask
org.dspace.ctask.general.RegisterDOI
All Implemented Interfaces:
CurationTask

public class RegisterDOI extends AbstractCurationTask
This curation task will register a DOI for an item, optionally ignoring any logical filtering applied to normal identifier registration and DOI service operation.
Author:
Kim Shepherd
  • Constructor Details

    • RegisterDOI

      public RegisterDOI()
  • Method Details

    • init

      public void init(Curator curator, String taskId) throws IOException
      Initialise the curation task and read configuration, instantiate the DOI provider
      Specified by:
      init in interface CurationTask
      Overrides:
      init in class AbstractCurationTask
      Parameters:
      curator - the Curator controlling this task
      taskId - identifier task should use in invoking services
      Throws:
      IOException - if error
    • perform

      public int perform(DSpaceObject dso) throws IOException
      Override the abstract 'perform' method to either distribute, or perform single-item depending on configuration. By default, the task is *not* distributed, since that could be unsafe and the original purpose of this task is to essentially implement a "Register DOI" button on the Edit Item page.
      Specified by:
      perform in interface CurationTask
      Specified by:
      perform in class AbstractCurationTask
      Parameters:
      dso - DSpaceObject for which to register a DOI (must be item)
      Returns:
      status indicator
      Throws:
      IOException
    • performItem

      protected void performItem(Item item)
      This is called when the task is distributed (ie. called on a set of items or over a whole structure)
      Overrides:
      performItem in class AbstractCurationTask
      Parameters:
      item - the DSpace Item