public abstract class AbstractOaiPmhController<T extends IdentifiableEntity,SERVICE extends IIdentifiableEntityService<T>>
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected IAuditEventService |
auditEventService |
protected SERVICE |
service |
Constructor and Description |
---|
AbstractOaiPmhController() |
Modifier and Type | Method and Description |
---|---|
protected void |
addSets(org.springframework.web.servlet.ModelAndView modelAndView)
Subclasses should override this method and add a collection of
eu.etaxonomy.cdm.remote.dto.oaipmh.Set objects called "sets" that
will be returned in the response
|
protected void |
finishModelAndView(LSID identifier,
MetadataPrefix metadataPrefix,
org.springframework.web.servlet.ModelAndView modelAndView) |
protected java.util.List<java.lang.String> |
getPropertyPaths()
Subclasses should override this method to return a list of property
paths that should be initialized for the getRecord, listRecords methods
|
org.springframework.web.servlet.ModelAndView |
getRecord(java.util.UUID identifier,
MetadataPrefix metadataPrefix)
CannotDisseminateFormatException thrown by MetadataPrefixEditor
|
org.springframework.web.servlet.ModelAndView |
handleBadArgument(java.lang.Exception ex,
javax.servlet.http.HttpServletRequest request) |
org.springframework.web.servlet.ModelAndView |
handleBadResumptionToken(java.lang.Exception ex,
javax.servlet.http.HttpServletRequest request) |
org.springframework.web.servlet.ModelAndView |
handleCannotDisseminateFormat(java.lang.Exception ex,
javax.servlet.http.HttpServletRequest request) |
org.springframework.web.servlet.ModelAndView |
handleIdDoesNotExist(java.lang.Exception ex,
javax.servlet.http.HttpServletRequest request) |
org.springframework.web.servlet.ModelAndView |
handleNoRecordsMatch(java.lang.Exception ex,
javax.servlet.http.HttpServletRequest request) |
org.springframework.web.servlet.ModelAndView |
identify() |
void |
initBinder(org.springframework.web.bind.WebDataBinder binder) |
boolean |
isRestrictToLsid() |
org.springframework.web.servlet.ModelAndView |
listIdentifiers(org.joda.time.DateTime from,
org.joda.time.DateTime until,
MetadataPrefix metadataPrefix,
SetSpec set) |
org.springframework.web.servlet.ModelAndView |
listIdentifiers(java.lang.String rToken) |
org.springframework.web.servlet.ModelAndView |
listMetadataFormats(LSID identifier)
CannotDisseminateFormatException thrown by MetadataPrefixEditor
|
org.springframework.web.servlet.ModelAndView |
listRecords(org.joda.time.DateTime from,
org.joda.time.DateTime until,
MetadataPrefix metadataPrefix,
SetSpec set) |
org.springframework.web.servlet.ModelAndView |
listRecords(java.lang.String rToken) |
org.springframework.web.servlet.ModelAndView |
listSets()
CannotDisseminateFormatException thrown by MetadataPrefixEditor
|
protected AuditEventRecord<T> |
obtainCdmEntity(LSID identifier) |
void |
setAdminEmail(java.lang.String adminEmail) |
void |
setAuditEventService(IAuditEventService auditEventService) |
void |
setBaseURL(java.lang.String baseURL) |
void |
setCacheProviderFacade(org.springmodules.cache.provider.CacheProviderFacade cacheProviderFacade)
sets cache name to be used
|
void |
setCachingModel(org.springmodules.cache.CachingModel cachingModel) |
void |
setDescription(java.lang.String description) |
void |
setPageSize(java.lang.Integer pageSize) |
void |
setProtocolVersion(java.lang.String protocolVersion) |
void |
setRepositoryName(java.lang.String repositoryName) |
void |
setRestrictToLsid(boolean restrictToLsid) |
abstract void |
setService(SERVICE service) |
protected SERVICE extends IIdentifiableEntityService<T> service
protected IAuditEventService auditEventService
public abstract void setService(SERVICE service)
public boolean isRestrictToLsid()
public void setRestrictToLsid(boolean restrictToLsid)
@Autowired public void setCacheProviderFacade(org.springmodules.cache.provider.CacheProviderFacade cacheProviderFacade)
@Autowired public void setCachingModel(org.springmodules.cache.CachingModel cachingModel)
protected java.util.List<java.lang.String> getPropertyPaths()
protected void addSets(org.springframework.web.servlet.ModelAndView modelAndView)
modelAndView
- @Autowired public void setAuditEventService(IAuditEventService auditEventService)
public void setRepositoryName(java.lang.String repositoryName)
public void setBaseURL(java.lang.String baseURL)
public void setProtocolVersion(java.lang.String protocolVersion)
public void setAdminEmail(java.lang.String adminEmail)
public void setDescription(java.lang.String description)
public void setPageSize(java.lang.Integer pageSize)
@InitBinder public void initBinder(org.springframework.web.bind.WebDataBinder binder)
@RequestMapping(method=GET, params="verb=GetRecord") public org.springframework.web.servlet.ModelAndView getRecord(@RequestParam(value="identifier",required=true) java.util.UUID identifier, @RequestParam(value="metadataPrefix",required=true) MetadataPrefix metadataPrefix) throws IdDoesNotExistException
IdDoesNotExistException
protected void finishModelAndView(LSID identifier, MetadataPrefix metadataPrefix, org.springframework.web.servlet.ModelAndView modelAndView) throws IdDoesNotExistException
identifier
- metadataPrefix
- modelAndView
- IdDoesNotExistException
protected AuditEventRecord<T> obtainCdmEntity(LSID identifier) throws IdDoesNotExistException
identifier
- IdDoesNotExistException
@RequestMapping(method=GET, params="verb=ListMetadataFormats") public org.springframework.web.servlet.ModelAndView listMetadataFormats(@RequestParam(value="identifier",required=false) LSID identifier) throws IdDoesNotExistException
IdDoesNotExistException
@RequestMapping(method=GET, params="verb=ListSets") public org.springframework.web.servlet.ModelAndView listSets()
@RequestMapping(method=GET, params="verb=Identify") public org.springframework.web.servlet.ModelAndView identify()
@RequestMapping(method=GET, params={"verb=ListIdentifiers","!resumptionToken"}) public org.springframework.web.servlet.ModelAndView listIdentifiers(@RequestParam(value="from",required=false) org.joda.time.DateTime from, @RequestParam(value="until",required=false) org.joda.time.DateTime until, @RequestParam(value="metadataPrefix",required=true) MetadataPrefix metadataPrefix, @RequestParam(value="set",required=false) SetSpec set)
@RequestMapping(method=GET, params={"verb=ListIdentifiers","resumptionToken"}) public org.springframework.web.servlet.ModelAndView listIdentifiers(@RequestParam(value="resumptionToken",required=true) java.lang.String rToken)
@RequestMapping(method=GET, params={"verb=ListRecords","!resumptionToken"}) public org.springframework.web.servlet.ModelAndView listRecords(@RequestParam(value="from",required=false) org.joda.time.DateTime from, @RequestParam(value="until",required=false) org.joda.time.DateTime until, @RequestParam(value="metadataPrefix",required=true) MetadataPrefix metadataPrefix, @RequestParam(value="set",required=false) SetSpec set)
@RequestMapping(method=GET, params={"verb=ListRecords","resumptionToken"}) public org.springframework.web.servlet.ModelAndView listRecords(@RequestParam(value="resumptionToken") java.lang.String rToken)
@ResponseStatus(value=BAD_REQUEST) @ExceptionHandler(value={java.lang.IllegalArgumentException.class,org.springframework.beans.TypeMismatchException.class,org.springframework.web.bind.MissingServletRequestParameterException.class}) public org.springframework.web.servlet.ModelAndView handleBadArgument(java.lang.Exception ex, javax.servlet.http.HttpServletRequest request)
@ResponseStatus(value=BAD_REQUEST) @ExceptionHandler(value=CannotDisseminateFormatException.class) public org.springframework.web.servlet.ModelAndView handleCannotDisseminateFormat(java.lang.Exception ex, javax.servlet.http.HttpServletRequest request)
@ResponseStatus(value=BAD_REQUEST) @ExceptionHandler(value=BadResumptionTokenException.class) public org.springframework.web.servlet.ModelAndView handleBadResumptionToken(java.lang.Exception ex, javax.servlet.http.HttpServletRequest request)
@ExceptionHandler(value=NoRecordsMatchException.class) public org.springframework.web.servlet.ModelAndView handleNoRecordsMatch(java.lang.Exception ex, javax.servlet.http.HttpServletRequest request)
@ResponseStatus(value=NOT_FOUND) @ExceptionHandler(value=IdDoesNotExistException.class) public org.springframework.web.servlet.ModelAndView handleIdDoesNotExist(java.lang.Exception ex, javax.servlet.http.HttpServletRequest request)
Copyright © 2007-2020 EDIT. All Rights Reserved.