public abstract class DOIService
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static boolean |
autoPublishDOI |
protected static boolean |
doiEnabled |
protected static java.lang.String |
password |
protected static int |
PRIMARY_SHOULDER_INDEX |
protected static java.lang.String |
serviceBaseUrl |
protected static java.util.HashMap<java.lang.Integer,java.lang.String> |
shoulderMap |
protected static java.lang.String |
uriTemplate |
protected static java.lang.String |
username |
Constructor and Description |
---|
DOIService()
Constructor
|
Modifier and Type | Method and Description |
---|---|
abstract org.dataone.service.types.v1.Identifier |
generateDOI()
Generate a DOI using the DOI service as configured
|
protected java.lang.String |
getLandingPage(org.dataone.service.types.v1.Identifier identifier)
Get the landing page url string for the given identifier
|
abstract void |
publishIdentifier(org.dataone.service.types.v1.Session session,
org.dataone.service.types.v1.Identifier identifier)
Make the status of the identifier to be public
|
void |
refreshStatus()
Refresh the status (enable or disable) of the DOI service from property file
|
boolean |
registerDOI(org.dataone.service.types.v2.SystemMetadata sysmeta)
Submits DOI metadata information about the object to DOI services
|
protected abstract void |
submitDOIMetadata(org.dataone.service.types.v1.Identifier identifier,
org.dataone.service.types.v2.SystemMetadata sysMeta)
Submit the doi metadata for the given id.
|
protected static final int PRIMARY_SHOULDER_INDEX
protected static boolean doiEnabled
protected static java.lang.String serviceBaseUrl
protected static java.lang.String username
protected static java.lang.String password
protected static java.lang.String uriTemplate
protected static boolean autoPublishDOI
protected static java.util.HashMap<java.lang.Integer,java.lang.String> shoulderMap
public void refreshStatus() throws edu.ucsb.nceas.utilities.PropertyNotFoundException
edu.ucsb.nceas.utilities.PropertyNotFoundException
protected java.lang.String getLandingPage(org.dataone.service.types.v1.Identifier identifier)
identifier
- the identifier which associates the landing pagepublic boolean registerDOI(org.dataone.service.types.v2.SystemMetadata sysmeta) throws org.dataone.service.exceptions.InvalidRequest, DOIException, org.dataone.service.exceptions.NotImplemented, org.dataone.service.exceptions.ServiceFailure, java.lang.InterruptedException, org.dataone.service.exceptions.NotAuthorized, org.dataone.service.exceptions.InvalidToken, org.dataone.service.exceptions.NotFound
sysMeta
- org.dataone.service.exceptions.InvalidRequest
DOIException
org.dataone.service.exceptions.NotImplemented
org.dataone.service.exceptions.ServiceFailure
java.lang.InterruptedException
org.dataone.service.exceptions.InvalidToken
org.dataone.service.exceptions.NotAuthorized
org.dataone.service.exceptions.NotFound
protected abstract void submitDOIMetadata(org.dataone.service.types.v1.Identifier identifier, org.dataone.service.types.v2.SystemMetadata sysMeta) throws org.dataone.service.exceptions.InvalidRequest, DOIException, org.dataone.service.exceptions.NotImplemented, org.dataone.service.exceptions.ServiceFailure, java.lang.InterruptedException, org.dataone.service.exceptions.InvalidToken, org.dataone.service.exceptions.NotAuthorized, org.dataone.service.exceptions.NotFound, java.io.IOException
identifier
- id can be either an identifier or a sidsysMeta
- the system metadata associated with the identifierorg.dataone.service.exceptions.InvalidRequest
DOIException
org.dataone.service.exceptions.NotImplemented
org.dataone.service.exceptions.ServiceFailure
java.lang.InterruptedException
org.dataone.service.exceptions.InvalidToken
org.dataone.service.exceptions.NotFound
java.io.IOException
org.dataone.service.exceptions.NotAuthorized
public abstract org.dataone.service.types.v1.Identifier generateDOI() throws DOIException, org.dataone.service.exceptions.InvalidRequest
DOIException
org.dataone.service.exceptions.InvalidRequest
public abstract void publishIdentifier(org.dataone.service.types.v1.Session session, org.dataone.service.types.v1.Identifier identifier) throws org.dataone.service.exceptions.InvalidToken, org.dataone.service.exceptions.ServiceFailure, org.dataone.service.exceptions.NotAuthorized, org.dataone.service.exceptions.NotImplemented, org.dataone.service.exceptions.InvalidRequest, org.dataone.service.exceptions.NotFound, org.dataone.service.exceptions.IdentifierNotUnique, org.dataone.service.exceptions.UnsupportedType, org.dataone.service.exceptions.InsufficientResources, org.dataone.service.exceptions.InvalidSystemMetadata, DOIException
session
- the subjects call the methodidentifer
- the identifier of the object which will be published.session
- identifier
- org.dataone.service.exceptions.InvalidToken
org.dataone.service.exceptions.ServiceFailure
org.dataone.service.exceptions.NotAuthorized
org.dataone.service.exceptions.NotImplemented
org.dataone.service.exceptions.InvalidRequest
org.dataone.service.exceptions.NotFound
org.dataone.service.exceptions.IdentifierNotUnique
org.dataone.service.exceptions.UnsupportedType
org.dataone.service.exceptions.InsufficientResources
org.dataone.service.exceptions.InvalidSystemMetadata
DOIException
Copyright © 2023 Regents of the University of California. All Rights Reserved.