Class ArticleCatalogReader
java.lang.Object
org.episteme.core.io.AbstractResourceReader<List<BibliographicalNotice>>
org.episteme.core.bibliography.loaders.ArticleCatalogReader
- All Implemented Interfaces:
CatalogReader, ResourceIO<List<BibliographicalNotice>>, ResourceReader<List<BibliographicalNotice>>
public class ArticleCatalogReader
extends AbstractResourceReader<List<BibliographicalNotice>>
implements CatalogReader
Loader for scientific article catalogs, supporting interfaces with major
research databases like PubMed, CrossRef, or arXiv.
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the category for grouping.Returns a short description of this resource handler.Returns a long description of this resource handler.getName()Returns the display name of this resource handler.Returns the base path where this resource is located.Returns the type of resource.String[]Returns the supported versions of the format this reader/writer handles.protected List<BibliographicalNotice> loadFromInputStream(InputStream is, String id) protected List<BibliographicalNotice> loadFromSource(String id) loadNotice(String id) Loads a specific notice by its identifier (e.g., ISBN, DOI).Searches the catalog for works matching the given query string.Methods inherited from class AbstractResourceReader
clearCache, getMiniCatalog, getSampleDataPath, isUsingFallback, load, loadAll, loadAllFromSource, loadFromFallback, setCacheEnabledMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ResourceIO
getExpectedResourceFiles, getSupportedExtensions, isFileBased, isOutputMethods inherited from interface ResourceReader
isInput, load
-
Constructor Details
-
ArticleCatalogReader
public ArticleCatalogReader()
-
-
Method Details
-
search
Description copied from interface:CatalogReaderSearches the catalog for works matching the given query string.- Specified by:
searchin interfaceCatalogReader- Parameters:
query- the search query- Returns:
- a list of matching notices
-
loadNotice
Description copied from interface:CatalogReaderLoads a specific notice by its identifier (e.g., ISBN, DOI).- Specified by:
loadNoticein interfaceCatalogReader- Parameters:
id- the identifier- Returns:
- the notice, or null if not found
-
loadFromSource
- Specified by:
loadFromSourcein classAbstractResourceReader<List<BibliographicalNotice>>- Throws:
Exception
-
loadFromInputStream
protected List<BibliographicalNotice> loadFromInputStream(InputStream is, String id) throws Exception - Overrides:
loadFromInputStreamin classAbstractResourceReader<List<BibliographicalNotice>>- Throws:
Exception
-
getResourcePath
Description copied from interface:ResourceIOReturns the base path where this resource is located.- Specified by:
getResourcePathin interfaceResourceIO<List<BibliographicalNotice>>
-
getResourceType
Description copied from interface:ResourceIOReturns the type of resource.- Specified by:
getResourceTypein interfaceResourceIO<List<BibliographicalNotice>>
-
getName
Description copied from interface:ResourceIOReturns the display name of this resource handler. MUST be implemented with I18N support.- Specified by:
getNamein interfaceResourceIO<List<BibliographicalNotice>>- Returns:
- the display name
-
getDescription
Description copied from interface:ResourceIOReturns a short description of this resource handler. MUST be implemented with I18N support.- Specified by:
getDescriptionin interfaceResourceIO<List<BibliographicalNotice>>- Returns:
- the description
-
getLongDescription
Description copied from interface:ResourceIOReturns a long description of this resource handler. MUST be implemented with I18N support.- Specified by:
getLongDescriptionin interfaceResourceIO<List<BibliographicalNotice>>- Returns:
- the long description
-
getCategory
Description copied from interface:ResourceIOReturns the category for grouping. MUST be implemented with I18N support.- Specified by:
getCategoryin interfaceResourceIO<List<BibliographicalNotice>>- Returns:
- the category name
-
getSupportedVersions
Description copied from interface:ResourceIOReturns the supported versions of the format this reader/writer handles.Each implementation MUST override this method to declare which versions of the underlying format are supported. The returned array should contain version strings in the format's standard notation (e.g., "3.0", "2.1", "Level 3 Version 2").
Examples:
- MathML: {"3.0", "2.0"}
- SBML: {"Level 3 Version 2", "Level 3 Version 1", "Level 2 Version 5"}
- PhyloXML: {"1.10", "1.00"}
- Specified by:
getSupportedVersionsin interfaceResourceIO<List<BibliographicalNotice>>- Returns:
- array of supported version strings, never null (empty array if version-agnostic)
-